Meral
作者Meral·2014-07-14 10:20
数据库管理员·GUOJI

oracle clusterware 命令(part1)

字数 13311阅读 1160评论 0赞 0
1、Oracle Clusterware 工具集
节点层 olsnodes
网络层 oifcfg
集群层 crsctl、ocrcheck、ocrdump、ocrconfig

应用层 srvctl、onsctl、crs_stat


2、节点层

这一层面关注的是集群由哪些节点组成,olsnodes 这个命令用来显示集群节点列表,可用的参数如下,这些参数可以混合使用。

[grid@racnode1 ~]$ olsnodes -h 用法: olsnodes [ [-n] [-i] [-s] [-t] [<node> | -l [-p]] | [-c] ] [-g] [-v] where -n 输出节点编号和节点名 -p 输出本地节点的专用互连地址 -i 输出虚拟 IP 地址和节点名 <node> 输出指定节点的信息 -l 输出本地节点的信息 -s 输出节点状态 - 活动或不活动 -t 输出节点类型 - 连接或未连接 -g 启用事件记录 -v 在调试模式下运行; 仅用于 Oracle 技术支持用途。 -c 输出集群件名称 [grid@racnode1 ~]$ olsnodes -n -t -s -t racnode1 1 Active Unpinned racnode2 2 Active Unpinned
3、网络层

oifcfg 命令用来定义和修改Oracle集群需要的网卡属性,Oracle的每个网络接口包括名称、网段地址、接口类型3个属性。

[grid@racnode1 ~]$ oifcfg -help 名称: oifcfg - Oracle 接口配置工具。 用法: oifcfg iflist [-p [-n]] oifcfg setif {-node <nodename> | -global} {<if_name>/<subnet>:<if_type>}... oifcfg getif [-node <nodename> | -global] [ -if <if_name>[/<subnet>] [-type <if_type>] ] oifcfg delif [{-node <nodename> | -global} [<if_name>[/<subnet>]]] oifcfg [-help] <nodename> - 为通信网络所知的主机名 <if_name> - 系统中配置的接口的名称(网卡名字,如eth0) <subnet> - 接口的子网地址 <if_type> - 接口类型 { cluster_interconnect | public } [grid@racnode1 ~]$ oifcfg iflist eth0 10.10.10.0 eth1 10.10.10.0 [grid@racnode1 ~]$ oifcfg iflist -p -n eth0 10.10.10.0 PRIVATE 255.255.255.0 eth1 10.10.10.0 PRIVATE 255.255.255.0 [grid@racnode1 ~]$ oifcfg getif eth0 10.10.10.0 global public eth1 10.10.10.0 global cluster_interconnect [grid@racnode1 ~]$ oifcfg getif -global eth0 10.10.10.0 global public eth1 10.10.10.0 global cluster_interconnect [grid@racnode1 ~]$ oifcfg getif -if eth0 eth0 10.10.10.0 global public [grid@racnode1 ~]$ oifcfg getif -if eth1 eth1 10.10.10.0 global cluster_interconnect [grid@racnode1 ~]$ oifcfg getif -type public eth0 10.10.10.0 global public [grid@racnode1 ~]$ oifcfg getif -type cluster_interconnect eth1 10.10.10.0 global cluster_interconnect下面给一个实际操作的列子: [grid@racnode1 ~]$ oifcfg getif --这里可以看见有两个网络配置 eth0 10.10.10.0 global public eth1 10.10.10.0 global cluster_interconnect [grid@racnode1 ~]$ oifcfg delif -global --在两个节点上面删除它们 [grid@racnode1 ~]$ oifcfg getif --再次查看就什么也没有了 [grid@racnode1 ~]$ oifcfg setif -global eth0/10.10.10.0:public --设置 [grid@racnode1 ~]$ oifcfg setif -global eth1/10.10.10.0:cluster_interconnect --设置 [grid@racnode1 ~]$ oifcfg setif -global eth2/10.10.10.0:public --设置(这里并没有eth2这块网卡存在) [grid@racnode1 ~]$ oifcfg getif --可以看见刚才设置的网络配置 eth0 10.10.10.0 global public eth1 10.10.10.0 global cluster_interconnect eth2 10.10.10.0 global public [grid@racnode1 ~]$ oifcfg delif -global eth2 --删除eth2 [grid@racnode1 ~]$ oifcfg getif --又回到原样啦 eth0 10.10.10.0 global public eth1 10.10.10.0 global cluster_interconnect
3、集群层

3.1 crsctl 命令可以用来检查CRS进程栈、每个CRS进程的状态,管理Votedisk、跟踪CRS进程等功能。

[grid@racnode1 ~]$ crsctl -help 用法: crsctl add - 添加资源, 类型或其他实体 crsctl check - 检查服务, 资源或其他实体 crsctl config - 输出自动启动配置 crsctl debug - 获取或修改调试状态 crsctl delete - 删除资源, 类型或其他实体 crsctl disable - 禁用自动启动 crsctl enable - 启用自动启动 crsctl get - 获取实体值 crsctl getperm - 获取实体权限 crsctl lsmodules - 列出调试模块 crsctl modify - 修改资源, 类型或其他实体 crsctl query - 查询服务状态 crsctl pin - 在节点列表中固定节点 crsctl relocate - 重新定位资源, 服务器或其他实体 crsctl replace - 替换表决文件的位置 crsctl setperm - 设置实体权限 crsctl set - 设置实体值 crsctl start - 启动资源, 服务器或其他实体 crsctl status - 获取资源或其他实体的状态 crsctl stop - 停止资源, 服务器或其他实体 crsctl unpin - 在节点列表中取消固定节点 crsctl unset - 取消设置实体值, 还原其默认值 [grid@linux ~]$ crsctl 用法: crsctl <command> <object> [<options>]     命令: enable|disable|config|start|stop|relocate|replace|stat|add|delete|modify|getperm|setperm|check|set|get|unset|debug|lsmodules|query 有关完整的用法, 请使用:     crsctl [-h | --help] 有关每个命令和对象及其选项的帮助详细信息, 请使用:     crsctl <command> <object> -h  例如 crsctl relocate resource -h [grid@linux ~]$ crsctl status resource -h Usage:   crsctl status resource [<resName>[...]|-w <filter>] [<-p|-v> [-e]] | [[-f|-l|-g]] | [[-k <cid>|-n <server>] [-d <did>]] | [-s -k <cid> [-d <did>]]      检查指定资源的状态   crsctl stat resource [<resName>[...]|-w <filter>] -t      按表格格式打印资源状态 其中      resName [...]     一个或多个用空白分隔的资源名称      -w                资源过滤器 (例如 'TYPE = ora.db')      -p                打印静态配置      -v                打印运行时配置      -e                评估资源实例的特殊值      -f                打印完整配置      -l                打印所有基数成员和程度成员      -g                检查资源是否已注册      -k                基数 ID      -d                程度 ID      -n                服务器名称      -s                获取要重新定位到的目标服务器      -t                表格显示

例子:

[grid@racnode1 ~]$ crsctl check crs --检查CRS栈状态 CRS-4638: Oracle High Availability Services 联机 CRS-4537: 集群就绪服务联机 CRS-4529: 集群同步服务联机 CRS-4533: 事件管理器联机 [root@racnode1 ~]# /u01/grid/bin/crsctl disable crs --禁用CRS开机自动启动 CRS-4621: Oracle High Availability Services autostart is disabled. [root@racnode1 ~]# /u01/grid/bin/crsctl enable crs --启用CRS开机自动启动 CRS-4622: Oracle High Availability Services autostart is enabled. [root@racnode1 ~]# /u01/grid/bin/crsctl check crs --检查CRS栈状态 CRS-4638: Oracle High Availability Services is online CRS-4537: Cluster Ready Services is online CRS-4529: Cluster Synchronization Services is online CRS-4533: Event Manager is online [root@racnode1 ~]# /u01/grid/bin/crsctl stop crs --停止CRS CRS-2791: 正在启动用于关闭 'racnode1' 上 Oracle High Availability Services 管理的资源的操作 ... ... CRS-4133: Oracle High Availability Services has been stopped. [root@racnode1 ~]# /u01/grid/bin/crsctl start crs --启动CRS CRS-4123: Oracle High Availability Services has been started. [grid@racnode1 ~]$ crsctl query css votedisk --查看votedisk磁盘位置 ## STATE File Universal Id File Name Disk group -- ----- ----------------- --------- --------- 1. ONLINE 660450b5dcce4f2dbff0710c018ee835 (/dev/raw/raw1) [OCR_VOTE] 2. ONLINE a1fe3ce9ee114f61bf35874d642db9b5 (/dev/raw/raw2) [OCR_VOTE] 3. ONLINE 4831bafd23404fb2bf89c2825afb9dfa (/dev/raw/raw3) [OCR_VOTE] 找到了 3 个表决磁盘。 [grid@racnode1 ~]$ crsctl get css misscount --获取参数值(修改用set) 30
3.2 ocrdump 命令能以ASCII的方式打印出OCR的内容。
[grid@racnode1 racnode-cluster]$ ocrdump -help 名称: ocrdump - 将 Oracle 集群/本地注册表的内容转储到文件。 概要: ocrdump [-local] [<filename>|-stdout] [-backupfile <backupfilename>] [-keyname <keyname>] [-xml] [-noheader] 说明: 默认文件名为 OCRDUMPFILE。例如: prompt> ocrdump 将集群注册表内容写入当前目录中的 OCRDUMPFILE prompt> ocrdump MYFILE 将集群注册表内容写入当前目录中的 MYFILE prompt> ocrdump -stdout -keyname SYSTEM 将集群注册表中的 SYSTEM 的子树写入 stdout prompt> ocrdump -local -stdout -xml 将本地注册表内容以 xml 格式写入 stdout prompt> ocrdump -backupfile /oracle/CRSHOME/backup.ocr -stdout -xml 将备份文件中的注册表内容以 xml 格式写入 stdout 注: 将尽力检索文件头信息。 将在 $ORACLE_HOME/log/<hostname>/client/ocrdump_<pid>.log 中创建日志文件。 在运行此工具前, 请确保 您具有在以上目录中创建文件的 权限。 使用选项 '-local' 指示该操作要在 Oracle 本地注册表上执行。
3.3 ocrcheck 命令用于检查OCR内容的一致性。
[grid@racnode1 racnode-cluster]$ ocrcheck -help 名称: ocrcheck - 显示 Oracle 集群/本地注册表的健康状况。 概要: ocrcheck [-config] [-local] -config 显示 Oracle 集群注册表的配置位置。 此选项可以与 -local 选项一起使用来显示 Oracle 本地注册表的配置位置 -local 该操作将在 Oracle 本地注册表上执行。 注: 将在以下位置创建日志文件: $ORACLE_HOME/log/<hostname>/client/ocrcheck_<pid>.log。 运行此工具时需要具有在以上目录中 创建文件的权限。 [grid@racnode1 racnode-cluster]$ ocrcheck Oracle 集群注册表的状态如下: 版本 : 3 总空间 (KB) : 262120 已用空间 (KB) : 2800 可用空间 (KB): 259320 ID : 1047799877 设备/文件名 : +OCR_VOTE 设备/文件完整性检查成功 设备/文件尚未配置 设备/文件尚未配置 设备/文件尚未配置 设备/文件尚未配置 集群注册表完整性检查成功 由于用户未经授权, 因此忽略逻辑损坏检查
3.4 ocrconfig 命令用于维护OCR磁盘。
[grid@racnode1 racnode-cluster]$ ocrconfig -help 名称: ocrconfig - Oracle 集群/本地注册表的配置工具。 概要: ocrconfig [option] option: [-local] -export <filename> - 将 OCR/OLR 内容导出到文件 [-local] -import <filename> - 从文件导入 OCR/OLR 内容 [-local] -upgrade [<user> [<group>]] - 从早期版本升级 OCR -downgrade [-version <version string>] - 将 OCR 降级到指定版本 [-local] -backuploc <dirname> - 配置 OCR/OLR 备份位置 [-local] -showbackup [auto|manual] - 显示 OCR/OLR 备份信息 [-local] -manualbackup - 执行 OCR/OLR 备份 [-local] -restore <filename> - 从物理备份中还原 OCR/OLR -replace <current filename> -replacement <new filename> - 将 OCR 设备/文件 <filename1> 替换为 <filename2> -add <filename> - 添加新 OCR 设备/文件 -delete <filename> - 删除 OCR 设备/文件 -overwrite - 覆盖磁盘上的 OCR 配置 -repair -add <filename> | -delete <filename> | -replace <current filename> -replacement <new filename> - 修复本地节点上的 OCR 配置 -help - 输出此帮助信息 注: * 将在 $ORACLE_HOME/log/<hostname>/client/ocrconfig_<pid>.log 中创建日志文件。 在运行此工具前, 请确保 您具有在以上目录中创建文件的 权限。 * 仅支持 -local -showbackup [manual]。 * 使用选项 '-local' 指示该操作要在 Oracle 本地注册表上执行。
[grid@racnode1 ~]$ ocrconfig -showbackup --查看自动备份 racnode1 2012/02/27 21:23:15 /u01/grid/cdata/racnode-cluster/backup00.ocr racnode1 2012/02/25 01:28:28 /u01/grid/cdata/racnode-cluster/backup01.ocr racnode1 2012/02/24 21:28:24 /u01/grid/cdata/racnode-cluster/backup02.ocr racnode1 2012/02/27 21:23:15 /u01/grid/cdata/racnode-cluster/day.ocr racnode1 2012/02/24 21:28:24 /u01/grid/cdata/racnode-cluster/week.ocr PROT-25: Oracle 集群注册表的手动备份不可用
Oracle推荐在对集群作调整时,比如增加、删除节点之前,应对OCR做一个备份。
--导出OCR进行备份
[root@rac1 ~]# /u01/app/oracle/product/10.2.0/crs_1/bin/ocrconfig -export /u01/ocr.exp
--导入OCR进行恢复
[root@rac1 ~]# /u01/app/oracle/product/10.2.0/crs_1/bin/ocrconfig -import /u01/ocr.exp
--移动OCR
[root@rac1 ~]# /u01/app/oracle/product/10.2.0/crs_1/bin/ocrconfig -replace ocr /dev/raw/raw3
--添加Mirror OCR
[root@rac1 ~]# /u01/app/oracle/product/10.2.0/crs_1/bin/ocrconfig -replace ocrmirror /dev/raw/raw2

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

  • RMAN备份类型
    评论 0 · 赞 0
  • oracle clusterware命令(part2)
    评论 0 · 赞 0
  • RMAN删除备份的命令
    评论 0 · 赞 0
  • RMAN常用命令详解
    评论 0 · 赞 0
  • RAC集群简介
    评论 0 · 赞 0
  • 相关文章

    相关问题

    相关资料

    X社区推广