Oracle Clusterware 工具集(2)——应用层!

来源:互联网 发布:日语语法书推荐 知乎 编辑:程序博客网 时间:2024/05/19 22:57

1、crs_stat 这个命令用于查看CRS维护的所有资源的运行状态。

[grid@racnode1 ~]$ crs_stat -help此命令已废弃并替换为 'crsctl status resource'保留此命令只是为了向后兼容Usage:  crs_stat [resource_name [...]] [-v] [-l] [-q] [-c cluster_member]        crs_stat [resource_name [...]] -t [-v] [-q] [-c cluster_member]        crs_stat -p [resource_name [...]] [-q]        crs_stat [-a] application -g        crs_stat [-a] application -r [-c cluster_member]        crs_stat -f [resource_name [...]] [-q] [-c cluster_member]        crs_stat -ls [resource_name [...]] [-q][grid@racnode1 ~]$ crs_stat -t名称           类型           目标      状态      主机        ------------------------------------------------------------ora.BG.dg      ora....up.type OFFLINE   OFFLINE               ora.DG.dg      ora....up.type OFFLINE   OFFLINE               ora....ER.lsnr ora....er.type OFFLINE   OFFLINE               ora....N1.lsnr ora....er.type OFFLINE   OFFLINE               ora....N2.lsnr ora....er.type OFFLINE   OFFLINE               ora....N3.lsnr ora....er.type OFFLINE   OFFLINE               ora....VOTE.dg ora....up.type ONLINE    ONLINE    racnode1    ora.asm        ora.asm.type   ONLINE    ONLINE    racnode1    ora.eons       ora.eons.type  ONLINE    ONLINE    racnode1    ora.gsd        ora.gsd.type   OFFLINE   OFFLINE               ora....network ora....rk.type ONLINE    ONLINE    racnode1    ora.oc4j       ora.oc4j.type  OFFLINE   OFFLINE               ora.ons        ora.ons.type   ONLINE    ONLINE    racnode1    ora.orcl.db    ora....se.type OFFLINE   OFFLINE               ora....SM1.asm application    ONLINE    ONLINE    racnode1    ora....E1.lsnr application    OFFLINE   OFFLINE               ora....de1.gsd application    OFFLINE   OFFLINE               ora....de1.ons application    ONLINE    ONLINE    racnode1    ora....de1.vip ora....t1.type OFFLINE   OFFLINE               ora....SM2.asm application    ONLINE    ONLINE    racnode2    ora....E2.lsnr application    OFFLINE   OFFLINE               ora....de2.gsd application    OFFLINE   OFFLINE               ora....de2.ons application    ONLINE    ONLINE    racnode2    ora....de2.vip ora....t1.type OFFLINE   OFFLINE               ora....ry.acfs ora....fs.type ONLINE    ONLINE    racnode1    ora.scan1.vip  ora....ip.type OFFLINE   OFFLINE               ora.scan2.vip  ora....ip.type OFFLINE   OFFLINE               ora.scan3.vip  ora....ip.type OFFLINE   OFFLINE

2、onsctl 这个命令用于管理配置ONS。当服务端发生某些事件时,服务器会主动的通知客户端这种变化,这样客户端就能尽早得知服务器端变化。而这种机制就是依赖ONS实现的。
[grid@racnode1 ~]$ onsctl -helponsctl: unknown command: -helpusage: onsctl <command> [<options>]Permitted <command>/<options> combinations are:command   options-------   ---------start                       - Start onsshutdown                    - Shutdown onsreload                      - Trigger ons to reread its configuration filedebug     [<attr>=<val> ..] - Display ons server debug informationset       [<attr>=<val> ..] - Set ons log parametersquery     [<attr>=<val>]    - Query ons log parametersping      [<max-retry>]     - Ping local onshelp                        - Print brief usage description (this)usage     [<command>]       - Print detailed usage description

3、srvctl 命令是RAC维护中最常用的命令,也是最复杂的命令。

srvctl 的命令格式如下:srvctl <command> <object> [<options>]

[grid@racnode1 ~]$ srvctl -help用法: srvctl <command> <object> [<options>]    命令: enable|disable|start|stop|relocate|status|add|remove|modify|getenv|setenv|unsetenv|config    对象: database|instance|service|nodeapps|vip|asm|diskgroup|listener|srvpool|server|scan|scan_listener|oc4j|home|filesystem|gns有关各个命令和对象的详细帮助, 请使用:  srvctl <command> -h 或  srvctl <command> <object> -h[grid@racnode1 ~]$ srvctl status -hSRVCTL status 命令显示对象的当前状态。用法: srvctl status database -d <db_unique_name> [-f] [-v]用法: srvctl status instance -d <db_unique_name> {-n <node_name> | -i <inst_name_list>} [-f] [-v]用法: srvctl status service -d <db_unique_name> [-s "<service_name_list>"] [-f] [-v]用法: srvctl status nodeapps用法: srvctl status vip { -n <node_name> | -i <vip_name> }用法: srvctl status listener [-l <lsnr_name>] [-n <node_name>]用法: srvctl status asm [-n <node_name>] [-a]用法: srvctl status scan [-i <ordinal_number>]用法: srvctl status scan_listener [-i <ordinal_number>]用法: srvctl status srvpool [-g <pool_name>] [-a]用法: srvctl status server -n "<server_list>" [-a]用法: srvctl status oc4j [-n <node_name>]用法: srvctl status home -o <oracle_home> -s <state_file> -n <node_name>用法: srvctl status filesystem -d <volume_device>用法: srvctl status diskgroup -g <dg_name> [-n "<node_list>"] [-a]用法: srvctl status gns -n <node_name>有关各个命令和对象的详细帮助, 请使用:  srvctl <command> <object> -h[grid@racnode1 ~]$ srvctl status instance -h显示数据库实例的当前状态。用法: srvctl status instance -d <db_unique_name> {-n <node_name> | -i <inst_name_list>} [-f] [-v]    -d <db_unique_name>      数据库的唯一名称    -n <node_name>           节点名    -i "<inst,...>"          逗号分隔的实例名    -f                       包含禁用的应用程序    -v                       详细输出    -h                       输出用法[grid@racnode1 ~]$ srvctl -h用法: srvctl [-V]用法: srvctl add database -d <db_unique_name> -o <oracle_home> [-m <domain_name>] [-p <spfile>] [-r {PRIMARY | PHYSICAL_STANDBY | LOGICAL_STANDBY | SNAPSHOT_STANDBY}] [-s <start_options>] [-t <stop_options>] [-n <db_name>] [-y {AUTOMATIC | MANUAL}] [-g "<serverpool_list>"] [-x <node_name>] [-a "<diskgroup_list>"]用法: srvctl config database [-d <db_unique_name> [-a] ]用法: srvctl start database -d <db_unique_name> [-o <start_options>]用法: srvctl stop database -d <db_unique_name> [-o <stop_options>] [-f]用法: srvctl status database -d <db_unique_name> [-f] [-v]用法: srvctl enable database -d <db_unique_name> [-n <node_name>]用法: srvctl disable database -d <db_unique_name> [-n <node_name>]用法: srvctl modify database -d <db_unique_name> [-n <db_name>] [-o <oracle_home>] [-u <oracle_user>] [-m <domain>] [-p <spfile>] [-r {PRIMARY | PHYSICAL_STANDBY | LOGICAL_STANDBY | SNAPSHOT_STANDBY}] [-s <start_options>] [-t <stop_options>] [-y {AUTOMATIC | MANUAL}] [-g "<serverpool_list>" [-x <node_name>]] [-a "<diskgroup_list>"|-z]用法: srvctl remove database -d <db_unique_name> [-f] [-y]用法: srvctl getenv database -d <db_unique_name> [-t "<name_list>"]用法: srvctl setenv database -d <db_unique_name> {-t <name>=<val>[,<name>=<val>,...] | -T <name>=<val>}用法: srvctl unsetenv database -d <db_unique_name> -t "<name_list>"用法: srvctl add instance -d <db_unique_name> -i <inst_name> -n <node_name> [-f]用法: srvctl start instance -d <db_unique_name> {-n <node_name> [-i <inst_name>] | -i <inst_name_list>} [-o <start_options>]用法: srvctl stop instance -d <db_unique_name> {-n <node_name> | -i <inst_name_list>}  [-o <stop_options>] [-f]用法: srvctl status instance -d <db_unique_name> {-n <node_name> | -i <inst_name_list>} [-f] [-v]用法: srvctl enable instance -d <db_unique_name> -i "<inst_name_list>"用法: srvctl disable instance -d <db_unique_name> -i "<inst_name_list>"用法: srvctl modify instance -d <db_unique_name> -i <inst_name> { -n <node_name> | -z }用法: srvctl remove instance -d <db_unique_name> [-i <inst_name>] [-f] [-y]用法: srvctl add service -d <db_unique_name> -s <service_name> {-r "<preferred_list>" [-a "<available_list>"] [-P {BASIC | NONE | PRECONNECT}] | -g <server_pool> [-c {UNIFORM | SINGLETON}] } [-k   <net_num>] [-l [PRIMARY][,PHYSICAL_STANDBY][,LOGICAL_STANDBY][,SNAPSHOT_STANDBY]] [-y {AUTOMATIC | MANUAL}] [-q {TRUE|FALSE}] [-x {TRUE|FALSE}] [-j {SHORT|LONG}] [-B {NONE|SERVICE_TIME|THROUGHPUT}] [-e {NONE|SESSION|SELECT}] [-m {NONE|BASIC}] [-z <failover_retries>] [-w <failover_delay>]用法: srvctl add service -d <db_unique_name> -s <service_name> -u {-r "<new_pref_inst>" | -a "<new_avail_inst>"}用法: srvctl config service -d <db_unique_name> [-s <service_name>] [-a]用法: srvctl enable service -d <db_unique_name> -s "<service_name_list>" [-i <inst_name> | -n <node_name>]用法: srvctl disable service -d <db_unique_name> -s "<service_name_list>" [-i <inst_name> | -n <node_name>]用法: srvctl status service -d <db_unique_name> [-s "<service_name_list>"] [-f] [-v]用法: srvctl modify service -d <db_unique_name> -s <service_name> -i <old_inst_name> -t <new_inst_name> [-f]用法: srvctl modify service -d <db_unique_name> -s <service_name> -i <avail_inst_name> -r [-f]用法: srvctl modify service -d <db_unique_name> -s <service_name> -n -i "<preferred_list>" [-a "<available_list>"] [-f]用法: srvctl modify service -d <db_unique_name> -s <service_name> [-c {UNIFORM | SINGLETON}] [-P {BASIC|PRECONNECT|NONE}] [-l [PRIMARY][,PHYSICAL_STANDBY][,LOGICAL_STANDBY][,SNAPSHOT_STANDBY]] [-y {AUTOMATIC | MANUAL}][-q {true|false}] [-x {true|false}] [-j {SHORT|LONG}] [-B {NONE|SERVICE_TIME|THROUGHPUT}] [-e {NONE|SESSION|SELECT}] [-m {NONE|BASIC}] [-z <integer>] [-w <integer>]用法: srvctl relocate service -d <db_unique_name> -s <service_name> {-i <old_inst_name> -t <new_inst_name> | -c <current_node> -n <target_node>} [-f]       为管理员管理的数据库指定实例, 或者为策略管理的数据库指定节点用法: srvctl remove service -d <db_unique_name> -s <service_name> [-i <inst_name>] [-f]用法: srvctl start service -d <db_unique_name> [-s "<service_name_list>" [-n <node_name> | -i <inst_name>] ] [-o <start_options>]用法: srvctl stop service -d <db_unique_name> [-s "<service_name_list>" [-n <node_name> | -i <inst_name>] ] [-f]用法: srvctl add nodeapps { { -n <node_name> -A <name|ip>/<netmask>/[if1[|if2...]] } | { -S <subnet>/<netmask>/[if1[|if2...]] } } [-p <portnum>] [-m <multicast-ip-address>] [-e <eons-listen-port>] [-l <ons-local-port>]  [-r <ons-remote-port>] [-t <host>[:<port>][,<host>[:<port>]...]] [-v]用法: srvctl config nodeapps [-a] [-g] [-s] [-e]用法: srvctl modify nodeapps {[-n <node_name> -A <new_vip_address>/<netmask>[/if1[|if2|...]]] | [-S <subnet>/<netmask>[/if1[|if2|...]]]} [-m <multicast-ip-address>] [-p <multicast-portnum>] [-e <eons-listen-port>] [ -l <ons-local-port> ] [-r <ons-remote-port> ] [-t <host>[:<port>][,<host>[:<port>]...]] [-v]用法: srvctl start nodeapps [-n <node_name>] [-v]用法: srvctl stop nodeapps [-n <node_name>] [-f] [-r] [-v]用法: srvctl status nodeapps用法: srvctl enable nodeapps [-v]用法: srvctl disable nodeapps [-v]用法: srvctl remove nodeapps [-f] [-y] [-v]用法: srvctl getenv nodeapps [-a] [-g] [-s] [-e] [-t "<name_list>"]用法: srvctl setenv nodeapps {-t "<name>=<val>[,<name>=<val>,...]" | -T "<name>=<val>"}用法: srvctl unsetenv nodeapps -t "<name_list>" [-v]用法: srvctl add vip -n <node_name> -k <network_number> -A <name|ip>/<netmask>/[if1[|if2...]] [-v]用法: srvctl config vip { -n <node_name> | -i <vip_name> }用法: srvctl disable vip -i <vip_name> [-v]用法: srvctl enable vip -i <vip_name> [-v]用法: srvctl remove vip -i "<vip_name_list>" [-f] [-y] [-v]用法: srvctl getenv vip -i <vip_name> [-t "<name_list>"]用法: srvctl start vip { -n <node_name> | -i <vip_name> } [-v]用法: srvctl stop vip { -n <node_name>  | -i <vip_name> } [-f] [-r] [-v]用法: srvctl status vip { -n <node_name> | -i <vip_name> }用法: srvctl setenv vip -i <vip_name> {-t "<name>=<val>[,<name>=<val>,...]" | -T "<name>=<val>"}用法: srvctl unsetenv vip -i <vip_name> -t "<name_list>" [-v]用法: srvctl add asm [-l <lsnr_name>]用法: srvctl start asm [-n <node_name>] [-o <start_options>]用法: srvctl stop asm [-n <node_name>] [-o <stop_options>] [-f]用法: srvctl config asm [-a]用法: srvctl status asm [-n <node_name>] [-a]用法: srvctl enable asm [-n <node_name>]用法: srvctl disable asm [-n <node_name>]用法: srvctl modify asm [-l <lsnr_name>] 用法: srvctl remove asm [-f]用法: srvctl getenv asm [-t <name>[, ...]]用法: srvctl setenv asm -t "<name>=<val> [,...]" | -T "<name>=<value>"用法: srvctl unsetenv asm -t "<name>[, ...]"用法: srvctl start diskgroup -g <dg_name> [-n "<node_list>"]用法: srvctl stop diskgroup -g <dg_name> [-n "<node_list>"] [-f]用法: srvctl status diskgroup -g <dg_name> [-n "<node_list>"] [-a]用法: srvctl enable diskgroup -g <dg_name> [-n "<node_list>"]用法: srvctl disable diskgroup -g <dg_name> [-n "<node_list>"]用法: srvctl remove diskgroup -g <dg_name> [-f]用法: srvctl add listener [-l <lsnr_name>] [-s] [-p "[TCP:]<port>[, ...][/IPC:<key>][/NMP:<pipe_name>][/TCPS:<s_port>] [/SDP:<port>]"] [-o <oracle_home>] [-k <net_num>]用法: srvctl config listener [-l <lsnr_name>] [-a]用法: srvctl start listener [-l <lsnr_name>] [-n <node_name>]用法: srvctl stop listener [-l <lsnr_name>] [-n <node_name>] [-f]用法: srvctl status listener [-l <lsnr_name>] [-n <node_name>]用法: srvctl enable listener [-l <lsnr_name>] [-n <node_name>]用法: srvctl disable listener [-l <lsnr_name>] [-n <node_name>]用法: srvctl modify listener [-l <lsnr_name>] [-o <oracle_home>] [-p "[TCP:]<port>[, ...][/IPC:<key>][/NMP:<pipe_name>][/TCPS:<s_port>] [/SDP:<port>]"] [-u <oracle_user>] [-k <net_num>]用法: srvctl remove listener [-l <lsnr_name> | -a] [-f]用法: srvctl getenv listener [-l <lsnr_name>] [-t <name>[, ...]]用法: srvctl setenv listener [-l <lsnr_name>] -t "<name>=<val> [,...]" | -T "<name>=<value>"用法: srvctl unsetenv listener [-l <lsnr_name>] -t "<name>[, ...]"用法: srvctl add scan -n <scan_name> [-k <network_number> [-S <subnet>/<netmask>[/if1[|if2|...]]]]用法: srvctl config scan [-i <ordinal_number>]用法: srvctl start scan [-i <ordinal_number>] [-n <node_name>]用法: srvctl stop scan [-i <ordinal_number>] [-f]用法: srvctl relocate scan -i <ordinal_number> [-n <node_name>]用法: srvctl status scan [-i <ordinal_number>]用法: srvctl enable scan [-i <ordinal_number>]用法: srvctl disable scan [-i <ordinal_number>]用法: srvctl modify scan -n <scan_name>用法: srvctl remove scan [-f] [-y]用法: srvctl add scan_listener [-l <lsnr_name_prefix>] [-s] [-p [TCP:]<port>[/IPC:<key>][/NMP:<pipe_name>][/TCPS:<s_port>] [/SDP:<port>]] 用法: srvctl config scan_listener [-i <ordinal_number>]用法: srvctl start scan_listener [-n <node_name>] [-i <ordinal_number>]用法: srvctl stop scan_listener [-i <ordinal_number>] [-f]用法: srvctl relocate scan_listener -i <ordinal_number> [-n <node_name>]用法: srvctl status scan_listener [-i <ordinal_number>]用法: srvctl enable scan_listener [-i <ordinal_number>]用法: srvctl disable scan_listener [-i <ordinal_number>]用法: srvctl modify scan_listener {-u|-p [TCP:]<port>[/IPC:<key>][/NMP:<pipe_name>][/TCPS:<s_port>] [/SDP:<port>]} 用法: srvctl remove scan_listener [-f] [-y]用法: srvctl add srvpool -g <pool_name> [-l <min>] [-u <max>] [-i <importance>] [-n "<server_list>"]用法: srvctl config srvpool [-g <pool_name>]用法: srvctl status srvpool [-g <pool_name>] [-a]用法: srvctl status server -n "<server_list>" [-a]用法: srvctl relocate server -n "<server_list>" -g <pool_name> [-f]用法: srvctl modify srvpool -g <pool_name> [-l <min>] [-u <max>] [-i <importance>] [-n "<server_list>"]用法: srvctl remove srvpool -g <pool_name>用法: srvctl add oc4j [-v]用法: srvctl config oc4j用法: srvctl start oc4j [-v]用法: srvctl stop oc4j [-f] [-v]用法: srvctl relocate oc4j [-n <node_name>] [-v]用法: srvctl status oc4j [-n <node_name>]用法: srvctl enable oc4j [-n <node_name>] [-v]用法: srvctl disable oc4j [-n <node_name>] [-v]用法: srvctl modify oc4j -p <oc4j_rmi_port> [-v]用法: srvctl remove oc4j [-f] [-v]用法: srvctl start home -o <oracle_home> -s <state_file> -n <node_name>用法: srvctl stop home -o <oracle_home> -s <state_file> -n <node_name> [-t <stop_options>] [-f]用法: srvctl status home -o <oracle_home> -s <state_file> -n <node_name>用法: srvctl add filesystem -d <volume_device> -v <volume_name> -g <dg_name> [-m <mountpoint_path>] [-u <user>]用法: srvctl config filesystem -d <volume_device>用法: srvctl start filesystem -d <volume_device> [-n <node_name>]用法: srvctl stop filesystem -d <volume_device> [-n <node_name>] [-f]用法: srvctl status filesystem -d <volume_device>用法: srvctl enable filesystem -d <volume_device>用法: srvctl disable filesystem -d <volume_device>用法: srvctl modify filesystem -d <volume_device> -u <user>用法: srvctl remove filesystem -d <volume_device> [-f]用法: srvctl start gns [-v] [-l <log_level>] [-n <node_name>]用法: srvctl stop gns [-v] [-n <node_name>] [-f]用法: srvctl config gns [-v] [-a] [-d] [-k] [-m] [-n <node_name>] [-p] [-s] [-V]用法: srvctl status gns -n <node_name>用法: srvctl enable gns [-v] [-n <node_name>]用法: srvctl disable gns [-v] [-n <node_name>]用法: srvctl relocate gns [-v] [-n <node_name>] [-f]用法: srvctl add gns [-v] -d <domain> -i <vip_name|ip> [-k <network_number> [-S <subnet>/<netmask>[/<interface>]]]srvctl modify gns [-v] [-f] [-l <log_level>] [-d <domain>] [-i <ip_address>] [-N <name> -A <address>] [-D <name> -A <address>] [-c <name> -a <alias>] [-u <alias>] [-r <address>] [-V <name>] [-F <forwarded_domains>] [-R <refused_domains>] [-X <excluded_interfaces>]用法: srvctl remove gns [-f] [-d <domain_name>]

(1)用config查看配置

[grid@racnode1 ~]$ srvctl config database             --显示在OCR中注册的所有数据库orcl[grid@racnode1 ~]$ srvctl config database -d orcl     --查看某个数据库配置数据库唯一名称: orcl数据库名: orclOracle 主目录: /u01/app/oracleOracle 用户: oracleSpfile: +DG/orcl/spfileorcl.ora域: 启动选项: open停止选项: immediate数据库角色: PRIMARY管理策略: AUTOMATIC服务器池: orcl数据库实例: orcl1,orcl2磁盘组: DG,BG服务: 数据库是管理员管理的[grid@racnode1 ~]$ srvctl config nodeappsVIP 已存在。:racnode1VIP 已存在。: /racnode1-vip/10.10.10.20/255.255.255.0/eth0VIP 已存在。:racnode2VIP 已存在。: /racnode2-vip/10.10.10.21/255.255.255.0/eth0GSD 已存在。ONS 守护程序已存在。本地端口 6100, 远程端口 6200eONS 守护程序已存在。多点传送端口 15303, 多点传送 IP 地址 234.73.183.171, 监听端口 2016[grid@racnode1 ~]$ srvctl config listener名称: LISTENER网络: 1, 所有者: grid主目录: <CRS home>端点: TCP:1521[grid@racnode1 ~]$ srvctl config asmASM 主目录: /u01/gridASM 监听程序: LISTENER