• oracle rac 数据库常用命令


    oracle rac 数据库常用命令:
    1.所有实例和服务的状态
    srvclt status database -d orcl
    单个实例的状态:
    srvctl status instance -d orcl -i orcl1/orcl2
    在数据库全局命名服务的状态:
    srvctl status service -d orcl -s orcltest
    特定节点应用程序的状态:
    srvctl status nodeapps -n linux1
    srvctl status nodeapps -n linux2
    ASM状态实例
    srvctl status asm -n linux1
    列出配置的所有数据库:
    srvctl config database
    显示RAC数据库的配置信息:
    srvctl config database -d orcl
    显示指定集群数据库所有的服务
    srvctl config service -d orcl
    显示节点应用程序的配置信息(VIP,GSD,ONS,监听器等)
    srvctl config nodeapps -n linux1 -a -g -s -l
    显示ASM实例的配置
    srvctl config asm -n linux1
    集群中所有正在运行的实例:
    select
    inst_id,instance_number inst_no,instance_name is inst_name,
    parallel,status,database_status db_status,
    active_state state,host_name host from gv$instance
    order by inst_id;
    位于磁盘组中的所有数据文件:
    select name from v$datafile
    union
    select member from v$logfile
    union
    select name from v$controlfile
    union
    select name from v$tempfile;

    启动和停止RAC数据库:
    su - oracle
    hostname
    停止oracle rac 10g环境:
    第一步:停止oracle实例,当此实例(和相关服务)关闭后,关闭ASM实例
    ,最后,关闭节点应用程序(虚拟IP,GSD,TNS监听器和ONS)
    export oracle_sid=orcl
    emctl stop dbconsole
    srvclt stop instance -d orcl -i orcl1
    srvctl stop asm -n rac1
    srvctl stop nodeapps -n rac1
    启动RAC环境:
    第一步是启动节点应用程序(虚拟IP,GSD,TNS监听器和ONS
    ).当成功启动节点应用程序后,启动ASM实例,最后,启动ORACLE实例(和相关的服务)以及企业管理器数据库控制台。
    export oracle_sid=orcl1
    srvctl start nodeapps -n rac1
    srvctl start asm -n rac1
    srvctl start instance -d orcl -i orcl1
    emctl start dbconsole
    实用srvclt 启动停止所有实例:
    srvclt start database -d orcl
    srvctl stop database -d orcl
    启动停止监听程序:
    lsnrctl start listener_hostb
    lsnrctl stop listener
    ****************************************************************************************************************************
    Oracle 10G R2 RAC 日常管理
    CRS的管理
    CRSCTL命令控制着本地节点的CRS服务(Oracle clusterware processes)
    停止CRS:
    $ crsctl stop crs或者
    $ /etc/init.crs stop或者
    $ crs_stop –all
    启动CRS:
    $ crsctl start crs或者
    $ /etc/init.d/init.crs start
    禁止Clusterware在系统重启后自动启动的方法:
    $ /etc/init.d/init.crs disable
    启动Clusterware在系统重启后自动启动的方法:
    $ /etc/init.d/init.crs enable
    查看CRS服务状态
    $ crsctl check crs
    OCR的资源管理
    OCR的资源,当RAC cluster启动并成功运行以后,你可以使用crs_stat工具看到如下内容:
    $ORA_CRS_HOME/bin/crs_stat
    通常情况下,所有的资源的状态都应该是online。另外,OCR每4个小时会备份一次。有一些情况你可以通过恢复的OCR的配置文件来恢复出现问题的OCR。
    比如使用出现如下情况:
    $ crs_stat -t
    CRS-0184: Cannot communicate with the CRS daemon.
    $ crsctl check boot
    Failure 4 at procr_open_key with status 4.
    PROC-4: The cluster registry key to be operated on does not exist.
    $ crsctl check crs
    Failure 1 contacting CSS daemon
    Cannot communicate with CRS
    Cannot communicate with EVM
    引起这个错误的一种可能原因是OCR配置丢了。这个我们可以利用这些备份来还原以前的配置。
    # /etc/init.crs disable
    # /etc/init.crs stop
    先保证所有的crs进程全部停止。
    # su – oracle
    $ cd $ORA_CRS_HOME/bin
    $./ocrconfig -restore /opt/app/oracle/crs/cdata/crs/week.ocr
    然后切换到root用户下,重新enable CRS
    # /etc/init.crs enable
    最后reboot两个节点
    SRVCTL命令介绍
    SRVCTL命令可以控制RAC数据库中的instance,listener以及services。
    通常SRVCTL在ORACLE用户下执行。下面我们来介绍srvctl命令。
    1、通过SRVCTL命令来start/stop/check所有的实例:
    $ srvctl start|stop|status database -d <db_name>
    2、start/stop指定的实例:
    $ srvctl start|stop|status instance -d <db_name> -i <instance_name>
    3、列出当前RAC下所有的
    $ srvctl config database -d <db_name>
    4、start/stop/check所有的nodeapps,比如:VIP, GSD, listener, ONS:
    $ srvctl start|stop|status nodeapps -n <node_name>
    5、如果你使用ASM,srvctl也可以start/stop ASM实例:
    $ srvctl start|stop asm -n <node_name> [-i <asm_inst_name>] [-o<oracle_home>]
    6、可以获取所有的环境信息:
    $ srvctl getenv database -d <db_name> [-i <instance_name>]
    7、设置全局环境和变量:
    $ srvctl setenv database -d <db_name> -t LANG=en
    8、从OCR中删除已有的数据库:
    $ srvctl remove database -d <db_name>
    9、向OCR中添加一个数据库:
    $ srvctl add database -d <db_name> -o <oracle_home>
    [-m <domain_name>] [-p<spfile>] [-A <name|ip>/netmask] [-r {PRIMARY | PHYSICAL_STANDBY |LOGICAL_STANDBY}] [-s <start_options>]
    10、向OCR中添加一个数据库的实例:
    $ srvctl add instance -d <db_name> -i <instance_name> -n <node1>
    $ srvctl add instance -d <db_name> -i <instance_name> -n <node2>
    11、向OCR中添加一个ASM实例:
    $ srvctl add asm -n <node_name> -i <asm_inst_name> -o <oracle_home>
    12、添加一个service
    $ srvctl add service -d <db_name> -s <service_name> -r <preferred_list>[-a <available_list>] [-P <TAF_policy>] [-u]
    13、修改在其他节点上的service
    $ srvctl modify service -d <db_name> -s <service_name> -I <orig_instance_name> -t <target_instance_name>
    14、relocate某个节点的service到其他节点
    srvctl relocate service -d <db_name> -s <service_name> -I
    CRS及相关服务的常用命令的演示
    1、查看状态的命令
    # su–oracle --先切换到oracle用户
    $ crs_stat -t --查看crs及所有的service的状态
    $ crsctl check crs --用crsctl命令,检查crs相关服务的状态
    $ srvctl status nodeapps -n db01 (db02) --使用srvctl查看所有节点上的服务是否正常
    $ srvctl status database -d db --使用srvctl查看数据库状态
    启动和关闭相关服务的命令
    # su – oracle
    $ crs_start–all --启动所有的crs服务
    $ crs_stop–all --停止所有的crs服务
    $ crsctl start crs --启动crs服务
    $ crsctl stop crs --停止crs服务
    $ srvctl start nodeapps -n db01(db02) --启动某节点上所有的应用
    $ srvctl stop nodeapps -n db01(db02) --停止某节点上所有的应用
    $ srvctl start listener -n db01(db02) --启动某个节点的listener
    $ srvctl stop listener -n db01(db02) --停止某个节点的listener
    $ srvctl start instance–d db–i db01(db02) --启动某个instance
    $ srvctl stop instance–d db–i db01(db02) --停止某个instance
    $ srvctl start database–d db --启动数据库
    $ srvctl stop database–d db --停止数据库

    --本篇文章转自:http://blog.chinaunix.net/uid-22741583-id-84985.html

  • 相关阅读:
    AOP实践--利用MVC5 Filter实现登录状态判断
    InstallShield12的安装破解方法
    phantomjs + python 打造一个微信机器人
    ASP.NET MVC4中@model使用多个类型实例的方法
    ssi技术
    ubuntu下面如何切换virtual_box的鼠标
    叫醒你的是闹钟,还是梦想?
    在linux命令行中直接执行php命令
    如何修改mysql默认的数据库密码
    【转】想要成功,请记住!
  • 原文地址:https://www.cnblogs.com/yabingshi/p/3889979.html
Copyright © 2020-2023  润新知