開啟歸檔
--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語句去檢視它的限制...