如果使用DBCA工具进行数据库的创建、集群服务创建,或使用netca进行集群监听器的配置等操作,
相应的配置结果会被自动写入OCR中注册记载。但如果手工创建了数据库(create database)、手工编辑
了监听器文件,则OCR中不作记载。这是需要管理员使用srvctl add 命令进行群集服务信息箱OCR的手工注册。
反之,如果进行了数据库的直接删除等类似操作,而未经过DBCA工具等,则需要使用反向命令srvctl remove进行
信息的手工删除。
例如,下面通过add database命令手工添加一套群集数据库sdzy,在集群节点node_a的node_b上分别添加实例
sdzy1和sdzy2:
$srvctl add database -d sdzy -o /db/oracle/product/10.2.0/db_1
$srvctl add instance -d sdzy -i sdzy1 -n node_a
$srvctl add instance -d sdzy -i sdzy2 -n node_b
在上面的过程中,关于数据库sdzy的定义被添加到了集群注册表中(这并不意味着这个数据库一定存在)
。其中-d 参数后面的是数据库名,-o参数声明了这套数据库的ORACLE_HOME,-i参数声明的是在各节点上的数据库
实例名,而-n参数则描述了节点名。
检查数据库在OCR的注册结果,对数据库sdzy进行查询如下:
$srvctl config database -d sdzy
node_a sdzy1 /db/oracle/product/10.2.0/db_1
node_b sdzy2 /db/oracle/product/10.2.0/db_1
$ crs_stat -t
Name Type Target State Host
------------------------------------------------------------
ora....t1.inst application ONLINE ONLINE cctt1
ora....t2.inst application ONLINE ONLINE cctt2
ora.cctt.db application ONLINE ONLINE cctt1
ora....y1.inst application OFFLINE OFFLINE
ora....y2.inst application OFFLINE OFFLINE
$ srvctl config database -d sdzy
cctt1 sdzy1 /oracle/product/db
cctt2 sdzy2 /oracle/product/db
添加完成后,管理员可以从任意一个节点进行手工的sdzy数据库的创建操作,并从各节点按照群集方式启动和
关闭数据库,或者以集群方式使用数据库,只要再创建其它相关信息即可,如网络监听服务等。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-733030/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/35489/viewspace-733030/