记得第一次修改RAC数据库从非归档模式到归档模式费了我很大劲,并且当时,有客户在身边看着,可总是修改不过来,呵呵…,今天一个新系统割接,同样需要将这个新装的数据库从非归档模式改为归档模式,下面简单贴下我的操作过程,仅供刚入行的朋友们学习、参考。
数据库为Oracle 10g RAC,节点1和节点2的归档目录分别为:/arch1和/arch2
1.修改节点1上实例参数:
SQL> alter system set cluster_database=false scope=spfile sid='*';
System altered.
SQL> alter system set log_archive_dest_1='location=/arch1' scope=spfile sid='dzywdb1';
System altered.
2.关闭节点1的数据库实例:
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
3.修改节点2上实例参数并关闭数据库
SQL> alter system set log_archive_dest_1='location=/arch2' scope=spfile sid='dzywdb2';
System altered.
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
4.启动节点1实例、打开归档并还原cluster_database参数
SQL> startup mount;
ORACLE instance started.
Total System Global Area 3.4360E+10 bytes
Fixed Size 2144088 bytes
Variable Size 4362078376 bytes
Database Buffers 2.9981E+10 bytes
Redo Buffers 14630912 bytes
Database mounted.
SQL> alter database archivelog;
Database altered.
SQL> alter database open;
Database altered.
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /arch1
Oldest online log sequence 2068
Next log sequence to archive 2070
Current log sequence 2070
SQL> alter system set cluster_database=true scope=spfile sid='*';
System altered.
5.启动节点2实例并改为归档模式
SQL> startup mount
ORACLE instance started.
Total System Global Area 3.4360E+10 bytes
Fixed Size 2144088 bytes
Variable Size 4362078376 bytes
Database Buffers 2.9981E+10 bytes
Redo Buffers 14630912 bytes
Database mounted.
SQL> alter database archivelog;
Database altered.
SQL> alter database open;
Database altered.
SQL> archive log list
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /arch2
Oldest online log sequence 1236
Next log sequence to archive 1238
Current log sequence 1238
至此,数据库实例1的归档目录指定到了/arch1;实例2的归档目录指定到了/arch2。