Oracle Clusterware 工具集(1)!

来源:互联网 发布:js软键盘关闭事件 编辑:程序博客网 时间:2024/06/11 12:31
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 -tracnode1        1       Active  Unpinnedracnode2        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 iflisteth0  10.10.10.0eth1  10.10.10.0[grid@racnode1 ~]$ oifcfg iflist -p -neth0  10.10.10.0  PRIVATE  255.255.255.0eth1  10.10.10.0  PRIVATE  255.255.255.0[grid@racnode1 ~]$ oifcfg getifeth0  10.10.10.0  global  publiceth1  10.10.10.0  global  cluster_interconnect[grid@racnode1 ~]$ oifcfg getif -globaleth0  10.10.10.0  global  publiceth1  10.10.10.0  global  cluster_interconnect[grid@racnode1 ~]$ oifcfg getif -if eth0eth0  10.10.10.0  global  public[grid@racnode1 ~]$ oifcfg getif -if eth1eth1  10.10.10.0  global  cluster_interconnect[grid@racnode1 ~]$ oifcfg getif -type publiceth0  10.10.10.0  global  public[grid@racnode1 ~]$ oifcfg getif -type cluster_interconnecteth1  10.10.10.0  global  cluster_interconnect
下面给一个实际操作的列子:

[grid@racnode1 ~]$ oifcfg getif                      --这里可以看见有两个网络配置eth0  10.10.10.0  global  publiceth1  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  publiceth1  10.10.10.0  global  cluster_interconnecteth2  10.10.10.0  global  public[grid@racnode1 ~]$ oifcfg delif -global eth2         --删除eth2[grid@racnode1 ~]$ oifcfg getif                      --又回到原样啦eth0  10.10.10.0  global  publiceth1  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 -hUsage:  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 onlineCRS-4537: Cluster Ready Services is onlineCRS-4529: Cluster Synchronization Services is onlineCRS-4533: Event Manager is online[root@racnode1 ~]# /u01/grid/bin/crsctl stop crs                       --停止CRSCRS-2791: 正在启动用于关闭 'racnode1' 上 Oracle High Availability Services 管理的资源的操作... ...CRS-4133: Oracle High Availability Services has been stopped.[root@racnode1 ~]# /u01/grid/bin/crsctl start crs                      --启动CRSCRS-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]$ ocrcheckOracle 集群注册表的状态如下:         版本                  :          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.ocrracnode1     2012/02/25 01:28:28     /u01/grid/cdata/racnode-cluster/backup01.ocrracnode1     2012/02/24 21:28:24     /u01/grid/cdata/racnode-cluster/backup02.ocrracnode1     2012/02/27 21:23:15     /u01/grid/cdata/racnode-cluster/day.ocrracnode1     2012/02/24 21:28:24     /u01/grid/cdata/racnode-cluster/week.ocrPROT-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

原创粉丝点击