1 数据库的准备配置
1.1 启用数据库的归档模式
由于修改归档模式要求只有一个实例并且只能把数据库启动到mount状态,首先停止集群数据库:
[oracle@rhel4n2 ~]$ srvctl stop database -d racdb
其中:
racdb为数据库名称。
在一个节点上启动数据库到mount状态:、
[oracle@rhel4n2 ~]$ sqlplus / as sysdba
SQL> startup mount
配置归档:
SQL> alter database archivelog;
SQL> alter system set
log_archive_dest_1='location=+RAC_DISK/RACDB/ARCHIVELOG/allnodes'
sid='RACDB1';
SQL> alter system set
log_archive_dest_1='location=+RAC_DISK/RACDB/ARCHIVELOG/allnodes '
sid='RACDB2';
其中:
RAC_DISK为ASM磁盘组名称, 归档文件名已经带了thread号,放到同目录就可以,方便管理。
RACDB1、RACDB2分别为两个实例名。
建立ASM中相应目录:
[oracle@rhel4n2 ~]$ export ORACLE_SID=+ASM2
[oracle@rhel4n2 ~]$ asmcmd –p
ASMCMD [+] > cd RAC_DISK/RACDB/ARCHIVELOG
ASMCMD [+RAC_DISK/RACDB/ARCHIVELOG] > mkdir
allnodes
重启数据库:
[oracle@rhel4n2 ~]$ srvctl stop database -d racdb
[oracle@rhel4n2 ~]$ srvctl start database -d racdb
1.2 让控制文件使用别名(建议)
默认情况下RAC集群的控制文件使用类“current.260.707698107”的命名方式,由于ASM控制了该名称的最后一部分,当需要恢复控制文件时无法恢复成原来的文件名,还需要在nomount的状态下更改spfile中的control_files参数,比较麻烦。更简单一点的方式是建立文件别名,在spfile中直接使用别名。
注:默认情况下spfile,archivelog的文件都使用了别名。
停止数据库:
[oracle@rhel4n2 ~]$ srvctl stop database -d racdb
创建控制文件的别名:
[oracle@rhel4n2 ~]$ export ORACLE_SID=