oracle 10g簡單的歸檔 備份及恢復

2021-06-16 15:30:55 字數 2929 閱讀 4823

開啟歸檔

--alter system set log_archive_start=true scope=spfile;--啟用主動歸檔  

--alter system reset log_archive_start scope=spfile sid='*';--重置 10g這個引數廢棄,設定以後報錯32004

--alter system set log_archive_dest='e:\oracle\product\10.2.0\oradata\arch' scope=spfile;--設定歸檔路徑

10g如果只設定乙個歸檔目錄,可以用上面的方式,注意沒有location

如果多個歸檔目錄,不能設定這個dest。

alter system set log_archive_dest_1='location=e:\oracle\product\10.2.0\oradata\arch\arch1' scope=spfile;--設定歸檔目錄

--alter system set log_archive_dest_2='location=e:\oracle\product\10.2.0\oradata\arch2' scope=spfile; --如果歸檔到兩個位置,則可以通過上邊方法實現

alter system set log_archive_format='arch_%d_%t_%r_%s.log' scope=spfile;

如果設定不正確,啟動報錯,原來的spfile可能要刪掉,然後:

create spfile from pfile='e:\oracle\product\10.2.0\db_1\admin\orcl\pfile\init.ora.6142013112438';

這樣在database下生成乙個spfile,然後正常啟動,重新設定歸檔引數

設定成功後,關閉資料庫,用mount啟動,

alter database archivelog;歸檔成功。

archive log list;檢視歸檔狀態。

alter system switch logfile;立即將重做日誌歸檔

然後在e:\oracle\product\10.2.0\oradata\arch這個目錄下面會生成乙個歸檔檔案。檔名類似arch1arch_5061743d_1_820783296_14.log

rman

cmd輸入命令rman,前提是oracle bin環境變數已設定。

rman> connect target   連線到本地

已連線到目標資料庫: orcl (dbid=1348564029, 未開啟)

rman> backup database format 'e:\oracle\backup\_%u';  備份資料庫到指定目錄

然後在目錄下會生成一些無字尾檔案。如_03oevo5s_1_1

備份歸檔日誌:

備份歸檔日誌報錯找不到檔案,原因是有些日誌檔案被刪除過 參考:

執行change archivelog all crosscheck;

再重新執行backup database archivelog all delete input format 'e:\oracle\backup\_%u';自動刪除原歸檔日誌

模擬資料檔案丟失。

殺oracle程序,刪除ht.dbf資料庫檔案開啟服務,例項啟動正常,監聽服務無法啟動,監聽啟動後停留在處理中的狀態。

連線rman

rman>restore database; 恢復資料庫

然後監聽可以啟動。但是開啟資料庫報錯。

sql> alter database open;

alter database open

*第 1 行出現錯誤:

ora-01113: 檔案 1 需要介質恢復

ora-01110: 資料檔案 1: 'e:\oracle\product\10.2.0\oradata\orcl\system01.dbf'

利用重做日誌恢復。

指定日誌目錄。必須是current日誌。

sql> recover database using backup controlfile;

ora-00279: 更改 692188 (在 07/17/2013 15:33:49 生成) 對於執行緒 1 是必需的

ora-00289: 建議: e:\oracle\product\10.2.0\oradata\arch\arch1arch_5061743d_1_820783296_16.log

ora-00280: 更改 692188 (用於執行緒 1) 在序列 #16 中

指定日誌:

控制台輸入

e:\oracle\product\10.2.0\oradata\orcl\redo01.log

ora-00310: 歸檔日誌包含序列 14; 要求序列 16

ora-00334: 歸檔日誌: 'e:\oracle\product\10.2.0\oradata\orcl\redo01.log'

sql> recover database using backup controlfile;

ora-00279: 更改 692188 (在 07/17/2013 15:33:49 生成) 對於執行緒 1 是必需的

ora-00289: 建議: e:\oracle\product\10.2.0\oradata\arch\arch1arch_5061743d_1_820783296_16.log

ora-00280: 更改 692188 (用於執行緒 1) 在序列 #16 中

指定日誌:

控制台輸入

e:\oracle\product\10.2.0\oradata\orcl\redo03.log

已應用的日誌。

完成介質恢復。

sql> alter database open resetlogs;

資料庫已更改。

sql>

正常了。

這裡重做日誌檔案可以查v$log當前日誌,用這個當前日誌去做恢復

Oracle 10G歸檔日誌

關於oracle 10g 歸檔方式的討論 關閉歸檔 啟用閃回恢復區歸檔 oracle 10g新特性 啟用類oracle9i的歸檔 注 在oracle安裝過程中,如果資料庫是自動建立的,那麼該資料庫最初的存檔模式是由作業系統指定的。通常情況下,歸檔日誌在oracle 資料庫安裝結束後需要手工建立。環境...

ORACLE 10G修改歸檔目錄方法

從oracle10g開始,改變日誌模式已經變得很簡單,很容易管理。在10g中,預設情況下,歸檔日誌會存放到快速恢復區所對應的目錄 對應初始化引數db recovery file dest 並且會按照特定的格式生成歸檔日誌檔名。當想要將歸檔日誌放在預設的路徑下是,只需要參mount狀態執行alter ...

更改oracle10g的歸檔模式和歸檔路徑

author skate time 2009 02 21 1.更改歸檔路徑 在oracle10g中,預設的歸檔路徑為 oracle base flash recovery area。對於這個路徑,oracle有乙個限制,就是預設只能有2g的空間給歸檔日誌使用,可以使用下面兩個sql語句去檢視它的限制...