尽管RAC提供了避免或是减少宕机时间的方法,但是仍需要对database自身进行保护,在RAC中,database是被所有Instances共享的。这意味着需要为cluster database设计合适的备份恢复策略,就向在普通环境中一样。
为了最小化由于disk failure造成的data丢失,常会使用disk镜像技术。例如设置database为归档模式,并对disks进行三个备份。对此可以移除一个镜像副本用于执行备份操作,而剩下两个仍然保持镜像副本,从而保证在线磁盘的活动。为了正确实现这些操作,可能需要先将这些tablespaces设置为backup模式,随后,如果需要,暂时的将disk操作halt,具体使用命令ALTER SYSTEM SUSPEND。当命令完成,可重新恢复原来的操作,通过命名ALTER SYSTEM RESUME,并将tablespaces从新设置为非backup模式。在这里使用EM对备份恢复的设置我就不讲了。
1、初始化归档
要开启cluster的归档模式,必须通过一个专有Instance让database处于mounted但尚未open的状态。如果使用的是spfile,必须先为该Instance创建特定SID实体,另外,创建一个特殊目的的文本参数文件,在该文件中,必须为这个专用Instance设置下面的几个参数:
* CLUSTER_DATABASE:设置为FALSE
* LOG_ARCHIVE_DEST_n:根据具体的归档策略,设置
* LOG_ARCHIVE_FOMAT:包含%t或%T和%R参数用于区分thread
* LOG_ARCHIVE_START设置为TRUE
具体的详细步骤如下:
①关闭运行中的数据库
# su – oracle
$sqlplus /nolog
sql>connect /as sysdba
sql>shutdown immediate
②导出现有数据库的spfile文件
如果没有spfile,可以先创建spfile
sql>create spfile from pfile;
然后导出spfile
sql>create pfile=’/oracle/pfile.ora’ from spfile; //将pfile创建到/oracle目录下