1) 自动备份
oracle会每小时备份一次ocr,自动备份的默认路径是:$CRS_HOME/cdata/$CRS_NAME下,可以用ocrconfig查看自动备份的信息。
自动备份只会在一个节点执行。如果用于备份的节点出现异常,则oracle会自动切换到其他节点进行备份。
默认情况下,oracle会保留最近5份ocr备份:3份最近的、一份昨天和一份上周的。
自动备份只会在一个节点上执行,安全起见,应该定期拷贝字段备份产生的文件到所有节点上。
2) 恢复
自动备份这种备份方式是物理备份,类似于数据库备份中的rman,需要用restore方式还原,恢复步骤:
a) 用ocrconfig -showbackup命令查看自动备份文件的位置(在那个节点上,在那个路径下)
$ ocrconfig -showbackup
b) 用ocrdump验证ocr信息,如:
以root执行:
/opt/oracle/product/10.2/crs/bin/ocrdump -backupfile /opt/oracle/product/10.2/crs/cdata/crs/week.ocr
这个命令会在当前路径下产生一个文件:OCRDUMPFILE,查看这个文件即可。
c) 在所有节点停止crs
/etc/init.d/init.crs stop
d) 用户ocrconfig还原
ocrconfig -restore file_name
e) 在所有节点启动crs
/etc/init.d/init.crs start
f) 可以用cluvfy 验证ocr是否正确
cluvfy comp ocr -n all [-verbose]
手工备份(逻辑备份)及恢复方法
我们不能修改ocr自动备份的时间及频率,但是oracle给我们提供了另外一种备份方式,可以让我们对ocr进行手工备份。
手工备份很简单,我们可以用ocrconfig命令,如:
ocrconfig -export /tmp/ocr.bak
注意,该命令只能以root执行。
这种备份方式是逻辑备份,如果ocr损坏需要还原,则需要用import方式把导出的内容导入,步骤如下:
a) 用ocrconfig -export出来的文件位置
b) 在所有节点停止crs
/etc/init.d/init.crs stop
c) 用户ocrconfig还原
ocrconfig -import file_name
d) 在所有节点启动crs
/etc/init.d/init.crs start
e) 可以用cluvfy 验证ocr是否正确
cluvfy comp ocr -n all [-verbose]
OCR恢复步骤:
1)、关闭运行在集群数据库的所有节点上的CRS服务程序
/etc/init.d/init.crs stop
2)、通过ocrconfig 的showbackup选项查看最近的备份
ocrconfig -showbackup
3)、通过ocrconfig的restore或import选项导入OCR数据
ocrconfig -restore filename_location 利用自动备份恢复
ocrconfig -import filename_location 利用手动备份恢复
4)、在所有节点上重新启动CRS
/etc/init.d/init.crs start
oracle会每小时备份一次ocr,自动备份的默认路径是:$CRS_HOME/cdata/$CRS_NAME下,可以用ocrconfig查看自动备份的信息。
自动备份只会在一个节点执行。如果用于备份的节点出现异常,则oracle会自动切换到其他节点进行备份。
默认情况下,oracle会保留最近5份ocr备份:3份最近的、一份昨天和一份上周的。
自动备份只会在一个节点上执行,安全起见,应该定期拷贝字段备份产生的文件到所有节点上。
2) 恢复
自动备份这种备份方式是物理备份,类似于数据库备份中的rman,需要用restore方式还原,恢复步骤:
a) 用ocrconfig -showbackup命令查看自动备份文件的位置(在那个节点上,在那个路径下)
$ ocrconfig -showbackup
b) 用ocrdump验证ocr信息,如:
以root执行:
/opt/oracle/product/10.2/crs/bin/ocrdump -backupfile /opt/oracle/product/10.2/crs/cdata/crs/week.ocr
这个命令会在当前路径下产生一个文件:OCRDUMPFILE,查看这个文件即可。
c) 在所有节点停止crs
/etc/init.d/init.crs stop
d) 用户ocrconfig还原
ocrconfig -restore file_name
e) 在所有节点启动crs
/etc/init.d/init.crs start
f) 可以用cluvfy 验证ocr是否正确
cluvfy comp ocr -n all [-verbose]
手工备份(逻辑备份)及恢复方法
我们不能修改ocr自动备份的时间及频率,但是oracle给我们提供了另外一种备份方式,可以让我们对ocr进行手工备份。
手工备份很简单,我们可以用ocrconfig命令,如:
ocrconfig -export /tmp/ocr.bak
注意,该命令只能以root执行。
这种备份方式是逻辑备份,如果ocr损坏需要还原,则需要用import方式把导出的内容导入,步骤如下:
a) 用ocrconfig -export出来的文件位置
b) 在所有节点停止crs
/etc/init.d/init.crs stop
c) 用户ocrconfig还原
ocrconfig -import file_name
d) 在所有节点启动crs
/etc/init.d/init.crs start
e) 可以用cluvfy 验证ocr是否正确
cluvfy comp ocr -n all [-verbose]
OCR恢复步骤:
1)、关闭运行在集群数据库的所有节点上的CRS服务程序
/etc/init.d/init.crs stop
2)、通过ocrconfig 的showbackup选项查看最近的备份
ocrconfig -showbackup
3)、通过ocrconfig的restore或import选项导入OCR数据
ocrconfig -restore filename_location 利用自动备份恢复
ocrconfig -import filename_location 利用手动备份恢复
4)、在所有节点上重新启动CRS
/etc/init.d/init.crs start