[Oracle集群软件全解析]Oracle Cluster Registry Utility 参考

时间:2022-07-23
本文章向大家介绍[Oracle集群软件全解析]Oracle Cluster Registry Utility 参考,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

1. 关于OCRCONFIG

我们使用OCRCONFIG来管理OCR文件,关于OCR我们可查看上面的链接

  • import
  • export
  • add
  • delete
  • restore
  • overwrite
  • backup
  • repair
  • replace
  • move
  • upgrade
  • downgrade

该命令位于Grid_home/bin

可使用ocrconfig -help 查看帮助

2. OCRCONFIG命令日志

日志文件位于:

Grid_home/log/host_name/client

我们可通过修改配置文件来更改日志的位置

Grid_home/srvm/admin/ocrlog.ini

3. OCRCONFIG 命令用法

以下列出相关用法,具体见官方文档

3.1 ocrconfig -add

使用该命令为OCR增加一个磁盘位置或者ASM磁盘组

  • 需要使用root用户执行
  • 该位置必须事先存在并具有权限,如增加ASM磁盘组,该磁盘组最好事先mount好

语法:

ocrconfig -add location_name

举例:

ocrconfig -add +data

location_name 可以为如下格式:

  • /dev/raw/raw1:请确保该设备存在
  • /oradbocfs/crs/data.ocr: 你必须实现创建一个空(0 bytes)的文件
  • d:oraclemirror.ocr: 你必须实现创建一个空(0 bytes)的文件
  • +newdg: 请确保磁盘组存在并已挂载

3.2 ocrconfig -backuploc

使用该命令指定一个ocr备份位置

  • 你必须使用root用户运行该命令
  • 指定的目录必须事先存在
  • 使用-local指定 OLR备份位置

语法:

ocrconfig [-local] -backuploc file_name

举例:

# ocrconfig -backuploc $Grid_home/cdata/cluster3

默认的OCR备份位置为:

Grid_home/cdata/cluster_name

默认的OLR备份位置为:

Grid_home/cdata/host_name

3.3 ocrconfig -delete

该命令用来删除OCR位置

你必须使用root用户运行该命令

语法:

ocrconfig -delete file_name

举例:

# ocrconfig -delete +olddg

OCR位置可以为如下形式

  • /dev/raw/raw1
  • /oradbocfs/crs/data.ocr
  • d:oraclemirror.ocr
  • +olddg

3.4 ocrconfig -downgrade

使用该命令将 OCR降级至指定的早期版本

  • 你必须使用root用户来运行

语法:

ocrconfig -downgrade [-version version_string]

举例:

# ocrconfig -downgrade -version

3.5 ocrconfig -export

使用该命令将OCR文件导出到指定的文件

  • 你必须使用root用户运行
  • 使用-local参数导出OLR文件

语法:

ocrconfig [-local] -export file_name

举例:

# ocrconfig -export d:tmpa

file_name可以为如下形式:

  • /oradbocfs/crs/data.ocr
  • d:oracle

3.6 ocrconfig -import

使用该命令将-export命令导出的文件导入到OCR文件中

  • 你必须使用root用户运行
  • 使用-local参数导入OLR文件

语法:

ocrconfig [-local] -import file_name

举例:

# ocrconfig -import d:tmpa

file_name可以为如下形式:

  • /oradbocfs/crs/data.ocr
  • d:oracle

3.7 ocrconfig -manualbackup

该命令用来手动备份OCR文件

  • 你必须使用root用户运行
  • 使用-local参数导入OLR文件

语法:

ocrconfig [-local] -manualbackup

举例:

# ocrconfig -manualbackup

3.8 ocrconfig -overwrite

  • 你必须使用root用户运行
  • 该命令用来将在命令所在节点找到的OCR配置文件信息覆盖到集群OCR文件中

语法:

ocrconfig -overwrite

举例:

# ocrconfig -overwrite

3.9 ocrconfig -repair

使用该命令来修复一个节点的OCR配置信息,可能的原因为在该节点离线时,OCR信息发生变化

  • 我们可以用它来add, delete, or replace OCR位置
  • 该位置必须事先存在
  • 你必须使用root用户运行
  • 使用该命令HASD服务需运行正常
  • 使用该命令CRSD进程需关闭
  • 只可同时运行一个repair 操作
  • 该命令只会影响当前节点

语法:

ocrconfig -repair -add file_name | -delete file_name | -replace current_file_name -replacement new_file_name

举例:

# ocrconfig -repair -delete +olddg

file_name可以为如下形式:

  • /dev/raw/raw1
  • /oradbocfs/crs/data.ocr
  • d:oraclemirror.ocr
  • +newdg

3.10 ocrconfig -replace

使用该命令用来替换OCR设备或文件

  • 该位置需事先存在并有权限读取他
  • 必须使用root用户执行
  • 你必须已有2个OCR位置来运行该命令,如没有则使用 ocrconfig -add -delete 命令

语法:

ocrconfig -replace current_location_name -replacement new_location_name

举例:

# ocrconfig -replace /dev/raw/raw1 -replacement +newdg

location_name 可以为如下形式:

  • /dev/raw/raw1:请确保该设备存在
  • /oradbocfs/crs/data.ocr: 你必须实现创建一个空(0 bytes)的文件
  • d:oraclemirror.ocr: 你必须实现创建一个空(0 bytes)的文件
  • +newdg: 请确保磁盘组存在并已挂载

3.11 ocrconfig -restore

该命令将备份的OCR文件还原

  • 必须使用root用户执行
  • 使用-local 还原OLR文件
  • 不可以restore通过-export命令导出的文件
  • 运行前需保证OCR或OLR文件是存在的,如不是需建立一个空的

语法:

ocrconfig [-local] -restore file_name

举例:

# ocrconfig -restore /oradbocfs/crs/BACKUP00.ocr

file_name可以为如下形式:

  • /oradbocfs/crs/BACKUP00.ocr
  • d:oracleBACKUP01.ocr

3.12 ocrconfig -showbackup

该命令用来显示备份的OCR文件

使用-local 显示手动的OLR备份文件,OLR不可以自动备份

语法:

ocrconfig [-local] -showbackup [auto | manual]

举例:

$ ocrconfig -local -showbackup manual

3.13 ocrconfig -upgrade

只有root script 使用 ocrconfig -upgrade 来从前面版本升级OCR版本

4. 诊断OCR问题

4.1 OCRCHECK

使用OCRCHECK 命令来检查OCR状态,如

  • 总空间
  • 已用空间
  • OCRID
  • OCR 位置

使用前需保证CRS服务已开启

4.2 OCRDUMP

我们可以使用OCRDUMP命令将OCR/OLR内容输出到文件或者终端来定位问题

日志位置:

Grid_home/log/host_name/client

配置文件:

Grid_home/srvm/admin/ocrlog.ini

语法:

$ ocrdump [file_name | -stdout] [-local] [-backupfile backup_file_name [-keyname key_name] [-xml] [-noheader] ]

  • file_name为需要输出的文件名,如不指定会自动生成OCRDUMPFILE的文件
  • -stdout 输出到终端
  • -local用来dump OLR
  • -backupfile 指定备份文件
  • backup_file_name可通过ocrconfig -showbackup查看
  • -xml 制定输出格式为xml
  • -keyname key_name 输出OCR文件 中指定的subtree key内容
  • -noheader 不输出时间等信息

举例:

输出ocr文件到MYFIE文件

ocrdump MYFILE

输出SYSTEM 键值的OCR内容

ocrdump -stdout -keyname SYSTEM

输出xml格式的信息到终端

ocrdump -stdout -xml

输出指定备份文件的内容至终端

ocrdump -stdout -backupfile Grid_home/cdata/cluster_name/file_name

4.3 OCRDUMP 输出范例