Oracle——設置數據庫爲歸檔模式

1         設置數據庫爲歸檔模式

做者:沈小然    日期:2014-9-23    地點:北京 數據庫

1.1           設置歸檔模式

1)首先查看數據庫是否處於歸檔模式,Oracle數據庫默認處於非歸檔模式下 oracle

SQL> archive log list app

Database log mode              No Archive Mode spa

Automatic archival             Disabled 線程

Archive destination            USE_DB_RECOVERY_FILE_DEST 日誌

Oldest online log sequence     175 orm

Current log sequence           177 ci

上面顯示沒有處於歸檔模式,咱們設成歸檔模式 string

2)更改歸檔模式,須要在啓動模式爲mount狀態才能設置 it

關閉數據庫

SQL> shutdown immediate;

Database closed.

Database dismounted.

ORACLE instance shut down.

啓動mount狀態

SQL> startup mount

ORACLE instance started.

Total System Global Area 2438529024 bytes

Fixed Size                  2230792 bytes

Variable Size            1107297784 bytes

Database Buffers         1308622848 bytes

Redo Buffers               20377600 bytes

Database mounted.

更改數據庫爲歸檔模式

SQL> alter database archivelog;

Database altered.

切換數據庫啓動模式爲open,數據庫能夠正常工做了。

SQL> alter database open;

Database altered.

再次查看是否爲歸檔模式,是否開啓自動歸檔,默認歸檔文件保存位置

SQL> archive log list;

Database log mode              Archive Mode

Automatic archival             Enabled

Archive destination            USE_DB_RECOVERY_FILE_DEST

Oldest online log sequence     181

Next log sequence to archive   183

Current log sequence           183

默認歸檔文件保存位置在/u01/app/oracle/admin/test/pfile/init.ora.7222014134227文件中的

db_recovery_file_dest="/u01/app/oracle/fast_recovery_area"

歸檔模式設置完成,重啓數據庫之後依然是歸檔模式。

1.2           更改歸檔日誌文件的路徑

首先建立歸檔日誌路徑,最好放到不一樣於oracle安裝位置的單獨分區下。

Oracle 10g開始能夠生成多份同樣的歸檔日誌,保存在多個位置以防不測。咱們建立兩個。

[root@VM oracle]# mkdir /data/oracle/log1

[root@VM oracle]# mkdir /data/oracle/log2

[root@VM oracle]# chown -R oracle.oinstall /data/oracle

SQL> alter system set log_archive_dest_1='location=/data/oracle/log1/archive_log';

System altered.

提示:若是沒事先建立歸檔日誌目錄,會提示下面的錯誤

SQL> alter system set log_archive_dest_1='location=/data/oracle/log1/archive_log';

alter system set log_archive_dest_1='location=/data/oracle/log1/archive_log'

*

ERROR at line 1:

ORA-02097: parameter cannot be modified because specified value is invalid

ORA-16032: parameter LOG_ARCHIVE_DEST_1 destination string cannot be translated

ORA-07286: sksagdi: cannot obtain device information.

Linux-x86_64 Error: 2: No such file or directory

查看狀態

SQL> archive log list;

Database log mode              Archive Mode

Automatic archival             Enabled

Archive destination            /data/oracle/log1/archive_log

Oldest online log sequence     181

Next log sequence to archive   183

Current log sequence           183

增長第二個歸檔日誌保存位置

SQL> alter system set log_archive_dest_2='location=/data/oracle/log2/archive_log';           

System altered.

查看狀態

SQL> archive log list;

Database log mode              Archive Mode

Automatic archival             Enabled

Archive destination            /data/oracle/log2/archive_log

Oldest online log sequence     181

Next log sequence to archive   183

Current log sequence           183

提示:只能看到最新的歸檔目錄。

1.3           修改歸檔日誌文件名格式

1)查看生成的默認歸檔日誌文件名

SQL> select name from v$archived_log;

NAME

--------------------------------------------------------------------------------

/data/oracle/log1/archive_log/1_183_856273328.dbf

/data/oracle/log2/archive_log/1_183_856273328.dbf

/data/oracle/log1/archive_log/1_184_856273328.dbf

/data/oracle/log2/archive_log/1_184_856273328.dbf

/data/oracle/log1/archive_log/1_185_856273328.dbf

/data/oracle/log2/archive_log/1_185_856273328.dbf

默認的歸檔日誌文件名如上所示,都是二進制文件。

2)修改歸檔日誌文件名格式

SQL> alter system set log_archive_format="archive_%t_%s_%r.log" scope=spfile;

System altered.

注意:這裏文件後綴雖然改爲了.log但歸檔日誌文件依然是二進制文件,沒法使用vi查看。

%t:重作線程編號

%s:日誌序列號

%rRESETLOGSID

10g開始,配置歸檔日誌文件格式時,必須帶有%s,%t%r匹配符。

3)手工的方式讓Oracle 直接使用下一個日誌組,而無論當前使用的日誌組是否寫滿,這樣方便咱們查看新的歸檔日誌格式是否設置生效。

SQL> alter system switch logfile;

System altered.

SQL> select name from v$archived_log;

NAME

--------------------------------------------------------------------------------

/data/oracle/log1/archive_log/1_183_856273328.dbf

/data/oracle/log2/archive_log/1_183_856273328.dbf

/data/oracle/log1/archive_log/1_184_856273328.dbf

/data/oracle/log2/archive_log/1_184_856273328.dbf

/data/oracle/log1/archive_log/1_185_856273328.dbf

/data/oracle/log2/archive_log/1_185_856273328.dbf

/data/oracle/log1/archive_log/archive_1_186_856273328.log

/data/oracle/log2/archive_log/archive_1_186_856273328.log

8 rows selected.

咱們看到新生成了歸檔日誌,設置的格式也生效了。

相關文章
相關標籤/搜索