Oracle 11g rac開啟歸檔
查看目前歸檔狀態
#節點1 ykws1
SQL> archive log list;
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 3098
Current log sequence 3099
#節點2 ykws2
SQL> archive log list
Database log mode No Archive Mode
Automatic archival Disabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 439
Current log sequence 440
以下命令如無說明均在一個節點上執行,以節點一為例。
查看集群下的所有實例狀態:
SQL> select instance_name,host_name,status from gv$instance;
INSTANCE_NAME HOST_NAME STATUS
------------------------ ------------------------------------------- ------------
ykws1 ykwsrac1 OPEN
ykws2 ykwsrac2 OPEN
查看集群配置:
SQL> show parameter cluster;
NAME TYPE VALUE
------------------------------------ -------------- ------------------
cluster_database boolean TRUE
cluster_database_instances integer 2
cluster_interconnects string
查看數據庫名稱
SQL> select name from v$database;
NAME
---------
YKWS
備份spfile文件
SQL> create pfile='/u01/app/oracle/product/11.2.0/db_1/dbs/oraykws1_bak.ora' from spfile;
File created.
設置節點一脫離集群,重啟后生效
SQL> alter system set cluster_database=false scope=spfile sid='*';
System altered.
切換到grid用戶下,停止數據庫而后將數據庫啟動至mount狀態來啟動歸檔。
[root@ykwsrac1 ~]# su - grid
[grid@ykwsrac1 ~]$ srvctl stop database -d YKWS
[grid@ykwsrac1 ~]$ srvctl start instance -d YKWS -i ykws1 -o mount
SQL> select instance_name,status from v$instance;
INSTANCE_NAME STATUS
---------------- ------------
ykws1 MOUNTED
啟動歸檔
SQL> alter database archivelog;
Database altered.
將節點一加入集群,重啟后生效
SQL> alter system set cluster_database=true scope=spfile sid='*';
System altered.
在grid用戶下重啟集群數據庫
[grid@ykwsrac1 ~]$ srvctl stop database -d YKWS
[grid@ykwsrac1 ~]$ srvctl start database -d YKWS
查詢歸檔狀態
#節點1 ykws1
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 3098
Next log sequence to archive 3099
Current log sequence 3099
#節點2 ykws2
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination USE_DB_RECOVERY_FILE_DEST
Oldest online log sequence 440
Next log sequence to archive 441
Current log sequence 441
到此為止,數據庫歸檔已經啟動了。此時的歸檔日志還是存放在默認路徑下接下來修改歸檔日志存放路徑。
將歸檔路徑修改為ASM磁盤下,先在grid用戶下查看ASM磁盤狀態、路徑
[grid@ykwsrac1 ~]$ asmcmd
ASMCMD> lsdg
State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
MOUNTED EXTERN N 512 4096 1048576 3276800 3273554 0 3273554 0 N DATA/
MOUNTED EXTERN N 512 4096 1048576 819200 818856 0 818856 0 N FRA/
MOUNTED HIGH N 512 4096 1048576 153600 152344 61440 30301 0 Y OCR/
將歸檔日志路徑修改為+FRA/磁盤組下,設置為立即並永久生效。
SQL> alter system set log_archive_dest_1='location=+FRA/' scope=both;
System altered.
查詢修改后結果
#節點1 ykws1
SQL> ARCHIVE LOG LIST;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination +FRA
Oldest online log sequence 3098
Next log sequence to archive 3099
Current log sequence 3099
#節點2 ykws2
SQL> ARCHIVE LOG LIST
Database log mode Archive Mode
Automatic archival Enabled
Archive destination +FRA
Oldest online log sequence 440
Next log sequence to archive 441
Current log sequence 441
注:修改歸檔文件名格式--alter system set log_archive_format='arc_%S_%T_%R.log' scope=spfile;
(log_archive_format為靜態參數,必須scope=spfile,重啟數據庫后生效.)