oracle歸檔模式

2021-05-23 03:12:42 字數 2896 閱讀 9405

一。檢視oracle資料庫是否為歸檔模式:[1]

1.select name,log_mode from v$database;

name log_mode

query noarchivelog

2.使用archive log list 命令

database log mode no archive mode

automatic archival disabled

archive destination /data/oracle/product/10.2.0/db_1//dbs/arch

oldest online log sequence 739

current log sequence 741

oracle資料庫有聯機重做日誌,這個日誌是記錄對資料庫所做的修改,比如插入,刪除,更新資料等,對這些操作都會記錄在聯機重做日誌裡。一般資料庫至少要有2個聯機重做日誌組。當乙個聯機重做日誌組被寫滿的時候,就會發生日誌切換,這時聯機重做日誌組2成為當前使用的日誌,當聯機重做日誌組2寫滿的時候,又會發生日誌切換,去寫聯機重做日誌組1,就這樣反覆進行。

如果資料庫處於非歸檔模式,聯機日誌在切換時就會丟棄. 而在歸檔模式下,當發生日誌切換的時候,被切換的日誌會進行歸檔。比如,當前在使用聯機重做日誌1,當1寫滿的時候,發生日誌切換,開始寫聯機重做日誌2,這時聯機重做日誌1的內容會被拷貝到另外乙個指定的目錄下。這個目錄叫做歸檔目錄,拷貝的檔案叫歸檔重做日誌。

資料庫使用歸檔方式執行時才可以進行災難性恢復。

1.歸檔日誌模式和非歸檔日誌模式的區別

非歸檔模式只能做冷備份,並且恢復時只能做完全備份.最近一次完全備份到系統出錯期間的資料不能恢復.

歸檔模式可以做熱備份,並且可以做增量備份,可以做部分恢復.

用archive log list 可以檢視期模式狀態時歸檔模式還是非歸檔模式.

三。配置資料庫的歸檔模式

改變非歸檔模式到歸檔模式:

1)sql>shutdown normal/immediate;

2)sql>startup mount;

3)sql>alter database archivelog;

4)sql>alter database open;

5)sql>做一次完全備份,因為非歸檔日誌模式下產生的備份日誌對於歸檔模式已經不可用了.這一步非非常重要!

改變歸檔模式到非歸檔模式:

1)sql>shutdown normal/immediate;

2)sql>startup mount;

3)sql>alter database noarchivelog;

4)sql>alter database open;

3.啟用自動歸檔: log_archive_start=true

歸檔模式下,日誌檔案組不允許被覆蓋(重寫),當日誌檔案寫滿之後,如果沒有進行手動歸檔,那麼系統將掛起,知道歸檔完成為止.

這時只能讀而不能寫.

執行過程中關閉和重啟歸檔日誌程序

sql>archive log stop

sql>archive log start

4.手動歸檔: log_archive_start=false

歸檔當前日誌檔案

sql>alter system archive log current;

歸檔序號為052的日誌檔案

sql>alter system archive log sequence 052;

歸檔所有日誌檔案

sql>alter system archive log all;

改變歸檔日誌目標

sql>alter system archive log current to '&path';

5.歸檔模式和非歸檔模式的轉換

第4步的逆過程.

三。配置資料庫的歸檔模式

改變非歸檔模式到歸檔模式:

1)sql>shutdown normal/immediate;

2)sql>startup mount;

3)sql>alter database archivelog;

4)sql>alter database open;

5)sql>做一次完全備份,因為非歸檔日誌模式下產生的備份日誌對於歸檔模式已經不可用了.這一步非非常重要!

改變歸檔模式到非歸檔模式:

1)sql>shutdown normal/immediate;

2)sql>startup mount;

3)sql>alter database noarchivelog;

4)sql>alter database open;

3.啟用自動歸檔: log_archive_start=true

歸檔模式下,日誌檔案組不允許被覆蓋(重寫),當日誌檔案寫滿之後,如果沒有進行手動歸檔,那麼系統將掛起,知道歸檔完成為止.

這時只能讀而不能寫.

執行過程中關閉和重啟歸檔日誌程序

sql>archive log stop

sql>archive log start

4.手動歸檔: log_archive_start=false

歸檔當前日誌檔案

sql>alter system archive log current;

歸檔序號為052的日誌檔案

sql>alter system archive log sequence 052;

歸檔所有日誌檔案

sql>alter system archive log all;

改變歸檔日誌目標

sql>alter system archive log current to '&path';

5.歸檔模式和非歸檔模式的轉換

第4步的逆過程.

oracle歸檔模式

一。檢視oracle資料庫是否為歸檔模式 1.select name,log mode fromv database name log mode query noarchivelog 2.使用 archive log list 命令 databaselogmode no archive mode a...

Oracle歸檔模式

oracle資料庫切換成歸檔模式的操作以及歸檔模式的一些相關知識是本文我們主要要介紹的內容,接下來我們就開始介紹這部分內容。首先我們執行下面的 sql shutdown immediate database closed.database dismounted.oracle instance shu...

Oracle 歸檔模式

1.概念歸檔模式 記歸檔日誌,生成歸檔日誌檔案,可以用來資料管理模式的資料恢復。可以做熱備份,並且可以做增量備份,可以做部分恢復非歸檔模式 不記歸檔日誌,沒有辦法進行資料恢復。只能做冷備份,並且恢復時只能做完全備份.最近一次完全備份到系統出錯期間的資料不能恢復.2.檢視oracle資料庫是否為歸檔模...