一. 確認日誌工作模式:

 

1.查詢v$database

 

SQL> select log_mode from v$database;

 

LOG_MODE

 

————

 

ARCHIVELOG

 

表明目前資料庫運行在歸檔日誌下,即資料庫在歸檔記錄模式下工作。

 

2.執行命令archive log list;

 

SQL> archive log list

 

歸檔模式,但是目前自動封存進程未啟用!

 

資料庫記錄模式存檔模式

 

自動封存禁用

 

存檔終點 D:\oracle\ora92\RDBMS

 

最早的概要日誌序列 214

 

下一個存檔日誌序列 214

 

當前日誌序列 216

 

二.修改日誌工作模式

 

1、由NOARCHIVELOG模式到ARCHIVELOG模式

 

第一步驟:關閉資料庫

 

SQL> shutdown immediate;

 

資料庫已經關閉。

 

已經卸載資料庫。

 

ORACLE 常式已經關閉。

 

第二步驟:啟動資料庫至MOUNT狀態

 

SQL> startup mount;

 

ORACLE 常式已經啟動。

 

Total System Global Area 135338868 bytes

 

Fixed Size 453492 bytes

 

Variable Size 109051904 bytes

 

Database Buffers 25165824 bytes

 

Redo Buffers 667648 bytes

 

資料庫裝載完畢。

 

第三步驟:執行命令alter database archivelog;進行修改

 

SQL> alter database archivelog;

 

資料庫已更改。

 

第四步驟:確認結果

 

SQL> archive log list;

 

資料庫記錄模式存檔模式

 

自動封存啟用

 

存檔終點 D:\oracle\ora92\RDBMS

 

最早的概要日誌序列 183

 

下一個存檔日誌序列 185

 

當前日誌序列 185

 

資料庫已經運行在歸檔記錄模式下了。

 

第五步:打開資料庫,將資料庫改變至OPEN狀態

 

SQL> alter database open;

 

資料庫已更改。SQL> alter system archive log start; (啟用自動歸檔)




2、由ARCHIVELOG模式到NOARCHIVELOG模式

 

第一步驟:關閉資料庫

 

SQL> shutdown immediate;

 

資料庫已經關閉。

 

已經卸載資料庫。

 

ORACLE 常式已經關閉。

 

第二步驟:啟動資料庫至MOUNT狀態

 

SQL> startup mount;

 

ORACLE 常式已經啟動。

 

Total System Global Area 135338868 bytes

 

Fixed Size 453492 bytes

 

Variable Size 109051904 bytes

 

Database Buffers 25165824 bytes

 

Redo Buffers 667648 bytes

 

資料庫裝載完畢。

 

第三步:執行命令alter database noarchivelog;進行修改

 

SQL> alter database noarchivelog;

 

資料庫已更改。

 

第四步驟:確認執行結果

 

SQL> select log_mode from v$database;

 

LOG_MODE

 

————

 

NOARCHIVELOG

 

我們看到資料庫又改變為在非歸檔模式下工作了。

 

第五步:打開資料庫,將資料庫改變至OPEN狀態

 

SQL> alter database open;

 

資料庫已更改。

 

三.修改自動歸檔模式

 

我們看到資料庫儘管運行在歸檔模式下,但是自動歸檔進程並未啟用,在這種狀態下我們還需要手工執行歸檔命令,歸檔日誌才可以產生,如何使得資料庫自動歸檔?

 

有種方法可以實現:

 

1.第一種方式:

 

將資料庫載入至MOUNT狀態,然後執行命令:alter system archive log start;

 

SQL> alter system archive log start;

 

系統已更改。

 

查看結果:

 

SQL> archive log list;

 

資料庫記錄模式存檔模式

 

自動封存啟用

 

存檔終點 D:\oracle\ora92\RDBMS

 

最早的概要日誌序列 183

 

下一個存檔日誌序列 185

 

當前日誌序列 185

 

這種方式的缺點:更改並非持久的,即如果重新開機資料庫,則對資料庫所做出的修改又無效了。

 

2.第二種方式:

 

通過修改PFILE檔實現持久性修改:

 

在PFILE檔:init.ora中加入

 

log_archive_start = true

 

然後通過PFILE檔載入資料庫

 

SQL> startup pfile=’D:\oracle\admin\libn\pfile\init.ora’ mount;

 

ORACLE 常式已經啟動。

 

Total System Global Area 135338868 bytes

 

Fixed Size 453492 bytes

 

Variable Size 109051904 bytes

 

Database Buffers 25165824 bytes

 

Redo Buffers 667648 bytes

 

資料庫裝載完畢。

 

這是再查看資料庫已經運行在自動封存模式下了。

 

四.存檔參數修改

 

init.ora檔中可以包含不同的參數,以便指定應該對存檔的重做日誌檔製作的副本數量、存儲這些副本的位置,甚至是存檔檔的檔案名的格式。此外,還可以指定使用多少個存檔進程來創建存檔的檔。

 

目標參數

 

LOG_ARCHIVE_DEST

 

LOG_ARCHIVE_DUPLEX_DEST

 

只需要將參數鍵入init.ora檔,後面加上預期的存檔位置即可。

 

log_archive_start = true

 

log_archive_dest=D:\oracle\ora92\rdbms

 

log_archive_duplex_dest=D:\oracle\ora92\rdbms

 

LOG_ARCHIVE_DEST_N

 

LOG_ARCHIVE_DEST_N參數(其中的N是一個指定的位置,範圍是1——10)允許最多指定10個位置來存儲存檔的檔。此外,其中一個位置可以位於一台不同的電腦上,如檔案伺服器或備用電腦網站的遠端位置,以便在主要的電腦中心發生自然災害或者人為事故時使用.

 

注意:這兩組參數不能同時使用。

 

五.歸檔檔案名參數

 

LOG_ARCHIVE_FORMAT

 

檔案名選項

 

選項

 

說明

 

%s

 

包括日誌序號,作為檔案名的一部分

 

%S

 

包括日誌序號並使用0填充左側,作為檔案名的一部分

 

%t

 

包括執行緒號,作為檔案名的一部分

 

%T

 

包括執行緒號並使用0填充左側,作為檔案名的一部分

 

創作者介紹
創作者 shadow 的頭像
shadow

資訊園

shadow 發表在 痞客邦 留言(0) 人氣()