Oracle RAC系列之:利用srvctl管理RAC数据库

srvctl即Server Control,是Oracle提供的一个命令行工具,用以用于管理Oracle的RAC环境。srvctl在Oracle 9i中被引入,Oracle10g、

srvctl即Server Control,是Oracle提供的一个命令行工具,用以用于管理Oracle的RAC环境。srvctl在Oracle 9i中被引入,Oracle10g、11g对其功能进行了很大的增强和改进。下面介绍下此命令的简单用法。

一、 查看实例状态(srvctl status)
查询所有实例和服务的状态:
[oracle@node-rac1 ~]$ srvctl status database -d racdb
Instance racdb2 is running on node node-rac2
Instance racdb1 is running on node node-rac1
查询实例racdb1的状态:
[oracle@node-rac1 ~]$ srvctl status instance -d racdb -i racdb1
Instance racdb1 is running on node node-rac1
查询实例racdb2的状态:
[oracle@node-rac1 ~]$ srvctl status instance -d racdb -i racdb2
Instance racdb2 is running on node node-rac2
查询特定节点上应用程序的状态:
[oracle@node-rac1 ~]$ srvctl status nodeapps -n node-rac2
VIP is running on node: node-rac2
GSD is running on node: node-rac2
Listener is running on node: node-rac2
ONS daemon is running on node: node-rac2
查询特定节点上ASM实例的状态
[oracle@node-rac1 ~]$ srvctl status asm -n node-rac2
ASM instance +ASM2 is running on node node-rac2.
在上面的命令行操作中,都用到的参数是:
-d,即database name,表示数据库名称
-n,即node name,表示节点名称
-i,即instance name,表示实例名称

二、 查看RAC数据库设置信息(srvctl config)
显示 RAC 数据库的配置:
[oracle@node-rac1 ~]$ srvctl config database -d racdb
node-rac2 racdb2 /u01/oracle/product/11.0.6/rac_db
node-rac1 racdb1 /u01/oracle/product/11.0.6/rac_db
列出配置的所有数据库:
[oracle@node-rac1 ~]$ srvctl config database
racdb
显示指定节点的应用程序配置:
[oracle@node-rac1 ~]$ srvctl config nodeapps -n node-rac2
VIP exists.: /node-vip2/192.168.12.240/255.255.255.0/eth0
GSD exists.
ONS daemon exists.
Listener exists.
显示指定节点的ASM实例配置:
[oracle@node-rac1 ~]$ srvctl config asm -n node-rac2       
+ASM2 /u01/oracle/product/11.0.6/rac_db

三、 启动/关闭实例(srvctl start/stop)
停止Oracle RAC所有服务:
[oracle@node-rac1 ~]$ emctl stop dbconsole
[oracle@node-rac1 ~]$ srvctl stop instance -d racdb -i racdb1
[oracle@node-rac1 ~]$ srvctl stop asm -n node-rac1
[oracle@node-rac1 ~]$ srvctl stop nodeapps -n node-rac1
也可以通过一条命令停止所有实例及其启用的服务:
[oracle@node-rac1 ~]$srvctl stop database -d racdb
启动Oracle RAC所有服务:
[oracle@node-rac1 ~]$ srvctl start nodeapps -n node-rac1
[oracle@node-rac1 ~]$ srvctl start asm -n node-rac1
[oracle@node-rac1 ~]$ srvctl start instance -d racdb -i racdb1
[oracle@node-rac1 ~]$ emctl start dbconsole
也可以通过一条命令启动所有实例及其启用的服务:
[oracle@node-rac1 ~]$srvctl start database -d racdb

四、 增加/删除/修改实例(srvctl add/remove/modify)
增加一个服务,,然后在节点间切换此服务:
[oracle@node-rac1 ~]$ srvctl add service -d racdb -s test -r racdb1 -a racdb2 -P BASIC
其中参数的含义如下:
-r, 表示首选实例
-a,表示可用的实例
-P,表示故障切换策略,有none、BASIC、preconnect三个可选项
在集群节点之间切换集群服务:
[oracle@node-rac1 ~]$ srvctl start service -d racdb -s test -i racdb1
[oracle@node-rac1 ~]$ srvctl status service -d racdb -s test
Service test is running on instance(s) racdb1
[oracle@node-rac1 ~]$ srvctl stop  service  -d racdb -s test -i racdb1  
[oracle@node-rac1 ~]$ srvctl start  service  -d racdb -s test -i racdb2
[oracle@node-rac1 ~]$ srvctl status  service  -d  racdb -s test
Service test is running on instance(s) racdb2
从某个实例节点移除一个服务:
[oracle@node-rac1 ~]$ srvctl remove service -d racdb -s test -i racdb2
test PREF: racdb1 racdb2 AVAIL:
Remove service test from the instance racdb2? (y/[n]) y
使数据库服务对某个实例可用:
[oracle@node-rac1 ~]$ srvctl add service -d racdb -s test -u -a racdb2
[oracle@node-rac1 ~]$ srvctl start service -d racdb -s test          
[oracle@node-rac1 ~]$ srvctl modify service -d racdb -s test -i racdb2 –r

linux

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1916153.html

(0)
上一篇 2025年2月22日 18:05:16
下一篇 2025年2月22日 18:05:31

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Oracle RAC cache fusion原理测试

    Oracle RAC cache fusion是RAC最核心的工作机制,他把所有实例的SGA虚拟成一个大的SGA区,每当不同的实例请求相同的数据块,这个数 oracle rac cache fusion是rac最核心的工作机制,他把所有实例…

    数据库 2025年2月23日
    100
  • Oracle RAC DRM基本概念

    在oracle RAC中,每个实例均存在一个数据缓存池,每个block的改变都将实例间进行资源协调以获取最大化性能,从而保证数据的完整性 在Oracle RAC中,每个实例均存在一个数据缓存池,每个block的改变都将实例间进行资源协调以获…

    数据库 2025年2月22日
    100
  • Oracle RAC下添加静态注册监听器listener

    通过设置不同的listener,可以在一台服务器多实例c环境下实现业务的隔离,方便业务起停和管理。添加的方法除了netca外,比较简单 通过设置不同的listener,可以在一台服务器多实例c环境下实现业务的隔离,方便业务起停和管理。添加的…

    数据库 2025年2月22日
    200
  • Oracle RAC 监听配置 (listener.ora tnsnames.ora)

    Oracle RAC 监听器的配置与单实例稍有不同,但原理和实现方法基本上是相同的。在Oracle中 tns进程用于为指定网络地址上的一个或多 Oracle RAC 监听器的配置与单实例稍有不同,但原理和实现方法基本上是相同的。在Oracl…

    数据库 2025年2月22日
    200
  • Oracle RAC 服务器端连接负载均衡(Load Balance)

    Oracle RAC服务器端的%ignore_a_1%是根据RAC中各节点的连接负荷数情况,将新的连接请求分配到负荷最小的节点上去。当数据库处于运行时 oracle rac服务器端的负载均衡是根据rac中各节点的连接负荷数情况,将新的连接请…

    数据库 2025年2月22日
    200
  • Oracle RAC 客户端连接负载均衡(Load Balance)

    实现负载均衡(Load Balance)是Oracle RAC最重要的特性之一,主要是把负载平均分配到集群中的各个节点,以提高系统的整体吞吐能力 实现负载均衡(load balance)是oracle rac最重要的特性之一,主要是把负载平…

    数据库 2025年2月22日
    200
  • Oracle RAC中的投票算法

    两个partition都想以为对方出问题,自己需要接管业务,如果没有投票算法就会导致两个partition同时操作数据库(共享存储)的情况 假设,rac集群中有三台机器,a,b,c A,B,C都会有3票,假设这是A的心跳线出现问题,整个RA…

    数据库 2025年2月22日
    200
  • Oracle RAC 连接到指定实例

    在某些特定的情形下,有时候需要从客户端连接到RAC中指定的实例,而不是由客户端Load_balance来动态选择或者是通过服务器端的监听 在某些特定的情形下,有时候需要从客户端连接到rac中指定的实例,而不是由客户端load_balance…

    数据库 2025年2月22日
    200
  • 再说 Oracle RAC services

    应用程序工作负载在Oracle 10g中可以被定为services,也称之为服务,能够在单实例中使用,也能够在RAC中单独使用和管理。因此整个 应用程序工作负载在oracle 10g中可以被定为services,也称之为服务,能够在单实例中…

    数据库 2025年2月22日
    200
  • 使用crs_setperm修改RAC资源的所有者及权限

    Oracle RAC 集群中,对于各种资源的管理,也存在所有者与权限的问题。crs_getperm与crs_setperm则是这样的一对命令,主要用于查看 oracle rac 集群中,对于各种资源的管理,也存在所有者与权限的问题。crs_…

    数据库 2025年2月22日
    200

发表回复

登录后才能评论