成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

丟失歸檔日志文件后數(shù)據(jù)庫(kù)應(yīng)當(dāng)如何恢復(fù)

運(yùn)維 數(shù)據(jù)庫(kù)運(yùn)維
在數(shù)據(jù)庫(kù)操作過(guò)程中,數(shù)據(jù)庫(kù)中數(shù)據(jù)的丟失是經(jīng)常會(huì)發(fā)生的,由于數(shù)據(jù)庫(kù)中數(shù)據(jù)信息的重要性,又不得不將其找回來(lái),那么如何將丟失歸檔文件恢復(fù)呢?

導(dǎo)讀:本文主要介紹了如何從一個(gè)不能正常打開(kāi)的數(shù)據(jù)庫(kù)(由于一個(gè)/多個(gè)數(shù)據(jù)庫(kù)文件與其他文件不一致)中提取數(shù)據(jù)的具體示例,然后通過(guò)這個(gè)例子來(lái)給大家詳細(xì)分析丟失歸檔日志文件恢復(fù)

  具體案例:

  一個(gè)磁盤(pán)損壞了并且丟失了一個(gè)數(shù)據(jù)庫(kù)文件。從一周前的熱備轉(zhuǎn)儲(chǔ)數(shù)據(jù)文件,可是丟失了幾個(gè)歸檔日志文件。但是有問(wèn)題的數(shù)據(jù)文件包含了最重要的表,采用什么辦法才能挽救數(shù)據(jù)呢?

  解決方法:

  每個(gè)數(shù)據(jù)庫(kù)管理員都知道這是有問(wèn)題的,一定會(huì)丟失數(shù)據(jù),因?yàn)槟承┦聞?wù)丟失了,問(wèn)題是會(huì)丟失多少數(shù)據(jù)?Oracle使用硬線路位置并且由于存在完整性約束問(wèn)題,因此不允許正常打開(kāi)數(shù)據(jù)。但是如果使用非常規(guī)的方法讓Oracle刪除其硬線路屬性,那么應(yīng)該能夠提取盡可能多的數(shù)據(jù)。而通常這會(huì)比損失全部數(shù)據(jù)要好很多。

  通常假如僅僅丟失了堆表的索引,或者某些能夠很容易重建的數(shù)據(jù),那么最好的方法應(yīng)該是刪除表空間并重建這些對(duì)象然后重新輸入。但是如果丟失的數(shù)據(jù)文件包含了重要數(shù)據(jù)并且很難恢復(fù),而且只有前一次的備份卻又丟失了某些歸檔日志,那么用戶可能希望能夠盡可能多的從有問(wèn)題的表空間恢復(fù)數(shù)據(jù)并且刪除和重建表空間。

  具體步驟如下:

  1.對(duì)當(dāng)前擁有的數(shù)據(jù)進(jìn)行一個(gè)冷備;

  2.轉(zhuǎn)儲(chǔ)丟失的數(shù)據(jù)庫(kù)文件備份并應(yīng)用可以應(yīng)用的日志;

  3.設(shè)置未文檔化的初始化參數(shù),其允許你在當(dāng)前狀態(tài)打開(kāi)數(shù)據(jù)庫(kù);

  4.執(zhí)行exp并提取全部可以從有問(wèn)題的表空間提取的數(shù)據(jù);

  5.從先前的冷備轉(zhuǎn)儲(chǔ)數(shù)據(jù)庫(kù);

  6.使毀壞的數(shù)據(jù)文件offline;

  7.執(zhí)行exp并提取第4步?jīng)]有提取的額外數(shù)據(jù);

  8.在一次從冷備轉(zhuǎn)儲(chǔ);

  9.刪除有問(wèn)題的表空間;

  10.重建有問(wèn)題的表空間;

  11.使用第四步和第七步提取的數(shù)據(jù)重建數(shù)據(jù);

  使用案例描述:ORDTAB表空間的一個(gè)數(shù)據(jù)文件ordtab03.dbf毀壞,其包含很多

  ORDERS表的分區(qū),數(shù)據(jù)文件熱備于July 4, 2004,July 4—至今的某些歸檔日志丟失。

#p#

  第1步:備份數(shù)據(jù)庫(kù)

  第1步的任務(wù)是冷備當(dāng)前擁有的任何數(shù)據(jù)文件,在線重做日志,和控制文件。如果丟失了一個(gè)/多個(gè)數(shù)據(jù)文件但是數(shù)據(jù)庫(kù)仍然是open的,那么對(duì)每個(gè)剩余的數(shù)據(jù)文件進(jìn)行熱備并確保備份期間/之后的歸檔被安全保存。

  創(chuàng)建備份后,在關(guān)閉數(shù)據(jù)庫(kù)之前,備份一下控制文件:

  ALTER DATABASE BACKUP CONTROLFILE TO TRACE RESETLOGS;

  然后打開(kāi)備份的控制文件,刪除第一個(gè)#之上的所有行,并刪除“RECOVER DATABASE…”到文件結(jié)尾的全部。

  第2步:轉(zhuǎn)儲(chǔ)丟失的數(shù)據(jù)庫(kù)文件備份并應(yīng)用日志;

  這一步應(yīng)該轉(zhuǎn)儲(chǔ)備份,并應(yīng)用日志到直到無(wú)法在前向滾動(dòng),此時(shí)如果嘗試正常打開(kāi)數(shù)據(jù)庫(kù),將會(huì)得到ORA-01589: must use RESETLOGS or NORESETLOGS option for database open錯(cuò)誤。

  如果嘗試執(zhí)行ALTER DATABASE OPEN RESETLOGS,將會(huì)得到ORA-01195錯(cuò)誤:ORA-01195: online backup of file %s needs more recovery to be consistent。

 

這里是Oracle使用其硬線路的位置。由于轉(zhuǎn)儲(chǔ)的數(shù)據(jù)文件不能恢復(fù)到與其他文件一致的位置,所以可能存在中斷的數(shù)據(jù)并且Oracle不允許正常打開(kāi)數(shù)據(jù)庫(kù)。

  第3步:設(shè)置未文檔化的實(shí)例參數(shù)并打開(kāi)數(shù)據(jù)庫(kù)

  在初始化參數(shù)文件中首先需要將job_queue_processes設(shè)置為0,然后設(shè)置_allow_resetlogs_corruption=TRUE,更改該參數(shù)后,切換到保存新控制文件的目錄,第一步創(chuàng)建的位置。然后以 SYSDBA連接并運(yùn)行新的控制文件創(chuàng)建腳本。

  此時(shí)數(shù)據(jù)庫(kù)可以打開(kāi)了。

  SQL> SELECT COUNT(*) FROM OE.orders;

  第4步:執(zhí)行導(dǎo)出并提取數(shù)據(jù)

  在這一步可以很容易的看到那些表導(dǎo)出了全部的數(shù)據(jù)。

  第5步:轉(zhuǎn)儲(chǔ)備份的數(shù)據(jù)庫(kù)

  這一步,以及下面兩步可選。這三步結(jié)合在一起允許提取更多的數(shù)據(jù),這一步從備份的數(shù)據(jù)庫(kù)轉(zhuǎn)儲(chǔ)可以高效的撤銷(xiāo)任何由于使用_allow_resetlogs_corruption參數(shù)造成的毀壞。因此,這一步不會(huì)恢復(fù)任何丟失的數(shù)據(jù)文件。

  第6步:使毀壞的數(shù)據(jù)文件offline

  ALTER DATABASE DATAFILE '/u07/oradata/PRD/ordtab03.dbf' OFFLINE;

  這一步得到數(shù)據(jù)庫(kù)的完全一致性狀態(tài)。

  第7步:執(zhí)行導(dǎo)出并提取額外的數(shù)據(jù)

  這一步可能能夠提取從第四步不能提取的額外數(shù)據(jù),如索引中的數(shù)據(jù)。

  第8步 :轉(zhuǎn)儲(chǔ)數(shù)據(jù)庫(kù)

  這是最后一次轉(zhuǎn)儲(chǔ)數(shù)據(jù)庫(kù),這一步正式回滾數(shù)據(jù)庫(kù)到使用隱含參數(shù)前那一刻,然后將數(shù)據(jù)庫(kù)返回到正常狀態(tài),如果從第五步轉(zhuǎn)儲(chǔ)以來(lái)沒(méi)有更新任何數(shù)據(jù),可以跳過(guò)這一步。

  第9步:刪除有問(wèn)題的表空間

  首先需要查看是否有完整性約束限制,使用以下查詢:

  SELECT CR.constraint_name
  FROM dba_constraints CR, dba_constraints CP, dba_tables TP, dba_tables TR
  WHERE CR.r_owner = CP.owner
  AND CR.r_constraint_name = CP.constraint_name
  AND CR.constraint_type = 'R'
  AND CP.constraint_type IN ('P', 'U')
  AND CP.table_name = TP.table_name
  AND CP.owner = TP.owner
  AND CR.table_name = TR.table_name
  AND CR.owner = TR.owner
  AND TR.tablespace_name <> 'ORDTAB'
  AND TP.tablespace_name = 'ORDTAB';

  如果有約束,可能需要?jiǎng)?chuàng)建重建腳本。如果使用export dump重建數(shù)據(jù),約束可以從導(dǎo)出文件轉(zhuǎn)儲(chǔ)。

  DROP TABLESPACE ordtab INCLUDING CONTENTS CASCADE CONSTRAINTS;

  第10步:重建表空間

       第11步:重建數(shù)據(jù)

  執(zhí)行導(dǎo)入后,結(jié)束。

上文中深入講解了丟失歸檔日志文件的丟失的恢復(fù)方法,相信大家在以后遇到類(lèi)似的問(wèn)題,自己就能輕松解決,大家都要熟練掌握哦,希望能夠?qū)Υ蠹矣兴鶐椭?/p>

【編輯推薦】

  1. 數(shù)據(jù)庫(kù)中利用角色增強(qiáng)應(yīng)用系統(tǒng)安全
  2. 講解Oracle數(shù)據(jù)庫(kù)提供的多種安全性措施
  3. 如何恢復(fù)數(shù)據(jù)庫(kù)的內(nèi)容
責(zé)任編輯:迎迎 來(lái)源: 希賽網(wǎng)
相關(guān)推薦

2011-05-24 10:26:12

Oracle數(shù)據(jù)庫(kù)日志文件

2010-11-19 13:28:13

2010-06-09 15:40:59

MySQL數(shù)據(jù)庫(kù)文件

2017-06-14 21:31:39

數(shù)據(jù)庫(kù)Oracleresetlogs

2011-08-02 11:16:08

Oracle數(shù)據(jù)庫(kù)歸檔日志

2010-07-20 15:01:39

SQLServer日志

2011-03-04 14:59:16

Raidoracle數(shù)據(jù)庫(kù)

2010-08-27 11:22:01

DB2日志文件歸檔

2011-08-23 17:45:54

MySQL丟失root密碼

2018-04-28 15:28:44

數(shù)據(jù)庫(kù)MySQL誤刪除

2010-05-14 14:21:18

2011-05-13 13:26:52

master數(shù)據(jù)庫(kù)恢復(fù)

2019-08-20 14:02:07

MongoDB數(shù)據(jù)庫(kù)恢復(fù)數(shù)據(jù)

2011-08-01 13:28:09

Oracle歸檔模式非歸檔模式

2010-07-01 12:44:52

SQL Server數(shù)

2018-04-28 14:55:41

Windows 10升級(jí)恢復(fù)

2011-03-24 11:14:46

2011-03-22 16:20:19

恢復(fù)數(shù)據(jù)庫(kù)

2017-10-16 16:43:05

數(shù)據(jù)庫(kù)Oracle數(shù)據(jù)丟失

2011-05-17 11:33:43

oracle數(shù)據(jù)庫(kù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 亚州影院 | 亚洲精品成人网 | 99精品久久 | 国产精品免费大片 | 国产一区久久 | 国产精品揄拍一区二区 | 性网站免费| 精品视频在线播放 | 国产精品视频播放 | 中文在线亚洲 | 日本午夜在线视频 | 日本视频免费 | 日韩精品一区二区三区四区视频 | 亚洲精品视频在线 | 精品国产1区2区3区 在线国产视频 | 在线黄色影院 | 午夜影院免费体验区 | 91免费看片 | 精品国产乱码久久久久久1区2区 | 久久av一区二区三区 | 中文在线а√在线8 | 求个av网址 | 国产在线精品一区二区三区 | 国产偷录叫床高潮录音 | 欧美一级大片 | 拍拍无遮挡人做人爱视频免费观看 | 妖精视频一区二区三区 | 久久久精彩视频 | 欧美成人一区二区 | 亚洲欧美日本国产 | 久久久国产精品 | 日韩一级电影免费观看 | 国产成人一区二 | 欧美亚洲综合久久 | 精久久久久| 亚洲精品一区二区 | www.yw193.com| 国产色网| 福利视频一区 | 亚洲a在线观看 | 国产精品视频免费看 |