zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

在Oracle中,如何将一个数据库添加到CRS中?

Oracle数据库 如何 一个 添加 CRS
2023-06-13 09:18:57 时间
题目部分

在Oracle中,如何将一个数据库添加到CRS中?

答案部分

虽然通过DBCA(DataBase Configuration Assistant,数据库配置助手)创建的数据库会自动加入CRS中,但通过RMAN创建的数据库是不会被加入CRS中的,在这种情况下就需要手动添加,将数据库加入CRS中后就可以通过srvctl来管理数据库了。

主要的命令包括:

srvctl remove database -d  lhrrac1 -f
srvctl add db -d lhrrac1 -o /u01/app/oracle/product/11.2.0/dbhome_1 -c RAC -p '+DATA/lhrrac1/spfilelhrrac1.ora' -r PRIMARY 
srvctl add instance -d lhrrac1 -i lhrrac11 -n raclhr-11gR2-N1
srvctl add instance -d lhrrac1 -i lhrrac12 -n raclhr-11gR2-N2
crsctl start res ora.lhrrac1.db
srvctl config db -d lhrrac1 -a
crsctl stat res ora.lhrrac1.db -p

修改数据库的属性:

srvctl modify database -d lhrrac1 -p '+DATA/lhrrac1/spfilelhrrac.ora' 
srvctl modify database -d lhrrac1 -s MOUNT
srvctl modify database -d lhrrac1 -t ABORT
srvctl modify database -d lhrrac1 -s open -t immediate 

禁用数据库随CRS的启动而启动:

crsctl modify resource ora.lhrrac1.db -attr AUTO_START=never
crsctl stat res ora.lhrrac1.db -p | grep AUTO_START

禁止CRS管理数据库:

srvctl disable db -d lhrrac1
crsctl stat res ora.lhrrac1.db -p | grep ENABLE
crsctl modify res ora.lhrrac1.db -attr "ENABLED=0"

属性AUTO_START表示Oracle Clusterware在群集服务器重启后是否自动启动资源。有效的AUTO_START值为:

l always:在服务器重新启动时重新启动资源,而不管服务器停止时资源的状态如何。

l restore:将资源恢复到服务器停止时的状态。如果在服务器停止之前TARGET的值为ONLINE,那么Oracle Clusterware会尝试重新启动资源。

l never:无论服务器何时停止,Oracle Clusterware都不会重新启动资源。

下面的例子演示了如何将一个物理DG添加到CRS中。

[ZHLHRDB2:Oracle]:/Oracle>crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
               ONLINE  ONLINE       ZHLHRDB1                                   
               ONLINE  ONLINE       ZHLHRDB2                                   
ora.LISTENER.lsnr
               ONLINE  ONLINE       ZHLHRDB1                                   
               ONLINE  ONLINE       ZHLHRDB2                                   
ora.asm
               ONLINE  ONLINE       ZHLHRDB1               Started             
               ONLINE  ONLINE       ZHLHRDB2               Started             
ora.gsd
               OFFLINE OFFLINE      ZHLHRDB1                                   
               OFFLINE OFFLINE      ZHLHRDB2                                   
ora.net1.network
               ONLINE  ONLINE       ZHLHRDB1                                   
               ONLINE  ONLINE       ZHLHRDB2                                   
ora.ons
               ONLINE  ONLINE       ZHLHRDB1                                   
               ONLINE  ONLINE       ZHLHRDB2                                   
ora.registry.acfs
               ONLINE  ONLINE       ZHLHRDB1                                   
               ONLINE  ONLINE       ZHLHRDB2                                   
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       ZHLHRDB1                                   
ora.cvu
      1        ONLINE  ONLINE       ZHLHRDB1                                   
ora.oc4j
      1        ONLINE  ONLINE       ZHLHRDB1                                   
ora.scan1.vip
      1        ONLINE  ONLINE       ZHLHRDB1                                   
ora.ZHLHRDB1.vip
      1        ONLINE  ONLINE       ZHLHRDB1                                   
ora.ZHLHRDB2.vip
      1        ONLINE  ONLINE       ZHLHRDB2                                   
[ZHLHRDB2:oracle]:/oracle>srvctl add database -h

Adds a database configuration to the Oracle Clusterware.

Usage: srvctl add database -d <db_unique_name> -o <oracle_home> [-c {RACONENODE | RAC | SINGLE} [-e <server_list>] [-i <inst_name>] [-w <timeout>]] [-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 | NORESTART}] [-g "<serverpool_list>"] [-x <node_name>] [-a "<diskgroup_list>"] [-j "<acfs_path_list>"]
    -d <db_unique_name>      Unique name for the database
    -o <oracle_home>         ORACLE_HOME path
    -c <type>                Type of database: RAC One Node, RAC, or Single Instance
    -e <server_list>         Candidate server list for RAC One Node database
    -i <inst_name>           Instance name prefix for administrator-managed RAC One Node database (default first 12 characters of <db_unique_name>)
    -w <timeout>             Online relocation timeout in minutes
    -x <node_name>           Node name. -x option is specified for single-instance databases
    -m <domain>              Domain for database. Must be set if database has DB_DOMAIN set.
    -p <spfile>              Server parameter file path
    -r <role>                Role of the database (primary, physical_standby, logical_standby, snapshot_standby)
    -s <start_options>       Startup options for the database. Examples of startup options are OPEN, MOUNT, or 'READ ONLY'.
    -t <stop_options>        Stop options for the database. Examples of shutdown options are NORMAL, TRANSACTIONAL, IMMEDIATE, or ABORT.
    -n <db_name>             Database name (DB_NAME), if different from the unique name given by the -d option
    -y <dbpolicy>            Management policy for the database (AUTOMATIC, MANUAL, or NORESTART)
    -g "<serverpool_list>"   Comma separated list of database server pool names
    -a "<diskgroup_list>"    Comma separated list of disk groups
    -j "<acfs_path_list>"    Comma separated list of ACFS paths where database's dependency will be set
    -h                       Print usage
[ZHLHRDB2:oracle]:/oracle>echo $ORACLE_HOME
/oracle/app/oracle/product/11.2.0/db
[ZHLHRDB2:oracle]:/oracle>srvctl add database -d TESTDGPHY -c RAC -o /oracle/app/oracle/product/11.2.0/db -p '+DATA/TESTDGPHY/PARAMETERFILE/spfiledgphy.ora' -r physical_standby -n TESTDG -i DGPHY
[ZHLHRDB2:oracle]:/oracle>
[ZHLHRDB2:oracle]:/oracle>srvctl add instance -d TESTDGPHY -i DGPHY1 -n ZHLHRDB1
[ZHLHRDB2:oracle]:/oracle>srvctl add instance -d TESTDGPHY -i DGPHY2 -n ZHLHRDB2
[ZHLHRDB2:oracle]:/oracle>srvctl status database -d TESTDGPHY 
Instance DGPHY1 is not running on node ZHLHRDB1
Instance DGPHY2 is not running on node ZHLHRDB2
[ZHLHRDB2:oracle]:/oracle>srvctl start database -d TESTDGPHY
[ZHLHRDB2:oracle]:/oracle>srvctl status database -d TESTDGPHY
Instance DGPHY1 is running on node ZHLHRDB1
Instance DGPHY2 is running on node ZHLHRDB2
[ZHLHRDB2:oracle]:/oracle>srvctl config database -d TESTDGPH  Y -a
Database unique name: TESTDGPHY
Database name: TESTDG
Oracle home: /Oracle/app/Oracle/product/11.2.0/db
Oracle user: Oracle
Spfile: +DATA/TESTDGPHY/PARAMETERFILE/spfiledgphy.ora
Domain: 
Start options: open
Stop options: immediate
Database role: PHYSICAL_STANDBY
Management policy: AUTOMATIC
Server pools: DGPHY
Database instances: DGPHY1,DGPHY2
Disk Groups: 
Mount point paths: 
Services: 
Type: RAC
Database is enabled
Database is administrator managed
[ZHLHRDB2:oracle]:/oracle>
[ZHLHRDB2:root]:/>crsctl stat res -t
--------------------------------------------------------------------------------
NAME           TARGET  STATE        SERVER                   STATE_DETAILS       
--------------------------------------------------------------------------------
Local Resources
--------------------------------------------------------------------------------
ora.DATA.dg
               ONLINE  ONLINE       ZHLHRDB1                                   
               ONLINE  ONLINE       ZHLHRDB2                                   
ora.LISTENER.lsnr
               ONLINE  ONLINE       ZHLHRDB1                                   
               ONLINE  ONLINE       ZHLHRDB2                                   
ora.asm
               ONLINE  ONLINE       ZHLHRDB1               Started             
               ONLINE  ONLINE       ZHLHRDB2               Started             
ora.gsd
               OFFLINE OFFLINE      ZHLHRDB1                                   
               OFFLINE OFFLINE      ZHLHRDB2                                   
ora.net1.network
               ONLINE  ONLINE       ZHLHRDB1                                   
               ONLINE  ONLINE       ZHLHRDB2                                   
ora.ons
               ONLINE  ONLINE       ZHLHRDB1                                   
               ONLINE  ONLINE       ZHLHRDB2                                   
ora.registry.acfs
               ONLINE  ONLINE       ZHLHRDB1                                   
               ONLINE  ONLINE       ZHLHRDB2                                   
--------------------------------------------------------------------------------
Cluster Resources
--------------------------------------------------------------------------------
ora.LISTENER_SCAN1.lsnr
      1        ONLINE  ONLINE       ZHLHRDB1                                   
ora.cvu
      1        ONLINE  ONLINE       ZHLHRDB1                                   
ora.oc4j
      1        ONLINE  ONLINE       ZHLHRDB1                                   
ora.scan1.vip
      1        ONLINE  ONLINE       ZHLHRDB1                                   
ora.testdgphy.db
      1        ONLINE  ONLINE       ZHLHRDB1               Open,Readonly       
      2        ONLINE  ONLINE       ZHLHRDB2               Open,Readonly       
ora.ZHLHRDB1.vip
      1        ONLINE  ONLINE       ZHLHRDB1                                   
ora.ZHLHRDB2.vip
      1        ONLINE  ONLINE       ZHLHRDB2                                   

可以看到物理备库testdgphy已经添加到CRS中了。