name> 目录。建议使用ocrconfig -backuploc 命令将此位置更
改为由集群中所有节点共享的位置。此命令将采用一个参数,即新位置的完整路径目录名。
[oracle@jyrac2 bin]$ ocrconfig -showbackup
jyrac1 2012/12/24 03:00:44 /u01/app/oracle/product/10.2.0/crs/cdata/crs
jyrac1 2012/12/22 05:07:52 /u01/app/oracle/product/10.2.0/crs/cdata/crs
jyrac2 2012/12/21 07:00:11 /u01/app/oracle/product/10.2.0/crs/cdata/crs
jyrac1 2012/12/24 03:00:44 /u01/app/oracle/product/10.2.0/crs/cdata/crs
jyrac2 2012/12/12 12:50:09 /u01/app/oracle/product/10.2.0/crs/cdata/crs
[oracle@jyrac2 bin]$
手动备份OCR
每天都应将OCR 自动备份备份到其他存储设备:
– 使用首选备份工具。
在进行重大更改之前和之后应对OCR 进行逻辑备份:
# ocrconfig –export file name
[root@jyrac2 ~]# cd /u01/app/oracle/product/10.2.0/crs/bin
[root@jyrac2 bin]# ./ocrconfig -export /u01/myback.ocr -s online
You have new mail in /var/spool/mail/root
[root@jyrac2 bin]#
[root@jyrac2 bin]# ll /u01/myback.ocr
-rw-r--r-- 1 root root 87993 Dec 24 07:33 /u01/myback.ocr
确保还原与当前系统配置相匹配的OCR 备份。
由于OCR 信息非常重要,因此还建议手动为自动生成的物理备份创建副本。可以使用任
意备份软件来复制自动生成的备份文件。建议至少每天执行一次将这些文件备份到其他设
备(不同于OCR 主文件所在的设备)的操作。
此外,还应在进行重大配置更改(如在环境中添加或删除节点、修改Oracle Clusterware
资源或创建数据库)之前和之后,导出OCR 内容。请以root 用户身份使用
ocrconfig -export 命令生成OCR 逻辑备份。需要指定一个文件名作为该命令的参
数,该命令会生成一个二进制文件,您将无法编辑该文件。
所做的大多数配置更改不仅会更改OCR 内容,而且还会创建文件和数据库对象。还原
OCR 时,其中某些更改通常不会得到还原。如果其中某些配置更改失败,则不要将执行
OCR 还原作为恢复到先前配置的更正方法,因为这可能导致OCR 的内容与系统其余部分
的状态不相符。
如果尝试在OCR 客户机运行过程中导出OCR,则会发生错误。
使用物理备份恢复OCR
1. 找到物理备份:$ ocrconfig –showbackup
2. 检查其内容:# ocrdump –backupfile file_name
3. 停止所有节点上的Oracle Clusterware:# crsctl stop crs
4. 还原OCR 物理备份:# ocrconfig –restore /cdata/jfv_clus/day.ocr
5. 重新启动所有节点上的Oracle Clusterware:# crsctl start crs
6. 检查OCR 完整性:$ cluvfy comp ocr -n all
在基于UNIX 的系统上,可使用以下过程还原OCR:
1. 使用ocrconfig -showbackup 命令标识OCR 备份。可以作为oracle 用户从任
何节点执行此命令。输出会显示要在其中检索自动生成的备份的节点和路径。
2. 使用ocrdump -backupfile file_name 检查备份内容,其中file_name 是备
份文件的名称。
3. 通过以root 用户身份在所有节点上执行crsctl stop crs 命令,停止集群中所
有节点上的Oracle Clusterware。
4. 通过以root 用户身份使用以下命令应用步骤1 中标识的OCR 备份文件来执行还原,
其中file_name 是要还原的OCR 文件的名称。在运行此命令之前,请确保OCR 配
置文件(/etc/oracle/ocr.loc) 中指定的OCR 设备存在并且有效:
ocrconfig -restore file_name
5. 通过以root 用户身份重新启动每个节点或运行crsctl start crs 命令,重新启
动集群中所有节点上的Oracle Clusterware。
6. 运行以下命令以验证OCR 完整性,其中-n all 参数将检索配置为集群一部分的所
有集群节点的列表:cluvfy comp ocr -n all
使用逻辑备份恢复OCR
1. 找到使用OCR 导出文件创建的逻辑备份。
2. 停止所有节点上的Oracle Clusterware:
# crsctl stop crs
3. 还原逻辑OCR 备份:
# ocrconfig –import /shared/export/ocrback.dmp
4. 重新启动所有节点上的Oracle Clusterware:
# crsctl start crs
5. 检查OCR 完整性:
$ cluvfy comp ocr -n all
在基于UNIX 的系统上,可使用以下过程导入OCR:
1. 通过标识先前使用ocrconfig -export file_name 命令创建的OCR 导出文件,
标识要导入的OCR 导出文件。
2. 通过以root 用户身份在所有节点上执行crsctl stop crs 命令,停止RAC 数据
库中所有节点上的Oracle Clusterware。
3. 通过使用以下命令应用步骤1 中标识的OCR 导出文件来执行导入操作,其中
file_name 是要从中导入OCR 信息的OCR 文件的名称:
ocrconfig -import file_name
4. 通过以root 用户身份使用crsctl start crs 命令,重新启动集群中所有节点上
的Oracle Clusterware。
5. 运行以下集群验证实用程序(CVU) 命令来验证OCR 完整性,其中-n all 参数将检
索配置为集群一部分的所有集群节点的列表:cluvfy comp ocr -n all