1、1:srvctl status database -d orcl 启动两个节点数据库数据库文件存放在DATADG中。DATADG处于mounted状态[oracle@node2 ~]$ srvctl status database -d orclPRCD-1120 : The resource for database orcl could not be found.PRCR-1001 : Resource ora.orcl.db does not exist
2、2:向OCR中添加一个数据库[oracle@node2 ~]$ srvctl add database -d orcl -o /u01/app/11.2.0.4/oracle/ -p +datadg/orcl/spfileorcl.ora如果在添加过程发现错误可以删除:[oracle@node2 ~]$ srvctl remove database -d orclRemove the database orcl? (y/[n]) y
3、3:查看OCR中数据库信息[oracle@node2 ~]$ srvctl config database -d orcl[oracle@node2 ~]$ srvctl config database -d orclDatabase unique name: orclDatabase name:Oracle home: /u01/app/11.2.0.4/oracle/Oracle user: oracleSpfile: +datadg/orcl/spfileorcl.oraDomain:Start options: openStop options: immediateDatabase role: PRIMARYManagement policy: AUTOMATICServer pools: orclDatabase instances:Disk Groups: DATADGMount point paths:Services:Type: RACDatabase is administrator managed此时Database instances 是空的查看
4、4:向OCR中添加数据库的实例[oracle@node2 ~]$ srvctl add instance -d orcl -i orcl2 -n node2[oracle@node2 ~]$ srvctl add instance -d orcl -i orcl1 -n node1PRCD-1051 : Failed to add instance to database orclPRCS-1011 : Failed to modify server pool orclPRCS-1014 : Server node1 is already part of server pool orcl这个时候发现添加实例orcl1添加失败查看server pool orcl:[oracle@node2 ~]$ srvctl config serverpoolServer pool name: FreeImportance: 0, Min: 0, Max: -1Candidate server names:Server pool name: GenericImportance: 0, Min: 0, Max: -1Candidate server names: node2,node1[grid@node2 ~]$ crsctl status serverNAME=node1STATE=ONLINENAME=node2STATE=ONLINE[grid@node2 ~]$ crsctl status serverpool -pNAME=FreeIMPORTANCE=0MIN_SIZE=0MAX_SIZE=-1SERVER_NAMES=PARENT_POOLS=EXCLUSIVE_POOLS=ACL=owner:grid:rwx,pgrp:oinstall:rwx,other::r-xNAME=GenericIMPORTANCE=0MIN_SIZE=0MAX_SIZE=-1SERVER_NAMES=node2 node1PARENT_POOLS=EXCLUSIVE_POOLS=ACL=owner:grid:r-x,pgrp:oinstall:r-x,other::r-xNAME=ora.orclIMPORTANCE=0MIN_SIZE=0MAX_SIZE=-1SERVER_NAMES=node2 node1PARENT_POOLS=GenericEXCLUSIVE_POOLS=ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--
5、5:启动数据库[oracle@node2 ~]$ srvctl start database -d orcl[oracle@node1 ~]$ srvctl status database -d orclInstance orcl2 is running on node node2启动数据库,发现只有节点2的实例启动了[grid@node2 ~]$ srvctl config database -d orclDatabase unique name: orclDatabase name:Oracle home: /u01/app/11.2.0.4/oracle/Oracle user: oracleSpfile: +datadg/orcl/spfileorcl.oraDomain:Start options: openStop options: immediateDatabase role: PRIMARYManagement policy: AUTOMATICServer pools: orclDatabase instances: orcl2Disk Groups: DATADGMount point paths:Services:Type: RACDatabase is administrator managed只有实例orcl2下面步骤是解决办法
6、6:停止数据库,删除实例orcl2[oracle@node2 ~]$ srvctl stop database -d orcl[oracle@node2 ~]$ srvctl status database -d orclInstance orcl2 is not running on node node2[oracle@node2 ~]$ srvctl remove instance -d orcl -i orcl2Remove instance from the database orcl? (y/[n]) y[oracle@node2 ~]$ srvctl config database -d orclDatabase unique name: orclDatabase name:Oracle home: /u01/app/11.2.0.4/oracle/Oracle user: oracleSpfile: +datadg/orcl/spfileorcl.oraDomain:Start options: openStop options: immediateDatabase role: PRIMARYManagement policy: AUTOMATICServer pools: orclDatabase instances:Disk Groups: DATADGMount point paths:Services:Type: RACDatabase is administrator managed
7、7:按顺序向OCR中添加数据库的实例[oracle@node2 ~]$ srvctl add instance -d orcl -i orcl1 -n node1[oracle@node2 ~]$ srvctl add instance -d orcl -i orcl2 -n node2[oracle@node2 ~]$ srvctl config database -d orclDatabase unique name: orclDatabase name:Oracle home: /u01/app/11.2.0.4/oracle/Oracle user: oracleSpfile: +datadg/orcl/spfileorcl.oraDomain:Start options: openStop options: immediateDatabase role: PRIMARYManagement policy: AUTOMATICServer pools: orclDatabase instances: orcl1,orcl2Disk Groups: DATADGMount point paths:Services:Type: RACDatabase is administrator managed[oracle@node2 ~]$ srvctl start database -d orcl[oracle@node2 ~]$ srvctl status database -d orclInstance orcl1 is running on node node1Instance orcl2 is running on node node2按顺序添加之后,通过srvctl启动数据库,两节点实例都正常启动