2.3 通过命令生成RAC one node
Oracle Clusterware用特定配置来创建 RAC One Node 数据库。下面是创建名为 wqtest 的数据库的示例。
$ srvctl add database -c RACONENODE -e "szh101db08,szh101db09" -i wqtest1 -d wqtest -o /u01/oracle/db/11204
“-c”选项指定数据库类型,在此例中为 RAC One Node。服务器池(server pool)包含由“-e”选项指定的两台服务器 : szh101db08 和 szh101db09 。实例名称由“-i”选项指定,Oracle Home 由“-o”指定。 当加入admin-managed的RAC one node数据库时会使用到 -e 及 -i 选项。如果是policy-managed,有另外的写法。
也可使用DBCA加入一个rac one node数据库到cluster 。
2.4 普通数据库为RAC one node
如果要将常规数据库转换为 RAC One Node 数据库,首先应仅在一个节点上将其转换为 RAC 数据库。然后使用 convert 命令:
$ srvctl convert database -d RAC1 -c RACONENODE
如果改变了主意,可以仅在一个节点上将其转换回常规 RAC 数据库:
$ srvctl convert database -d RAC1 -c RAC
3. Server Pool常用操作
A,添加服务器池demopool(最小数目0,最大数目2)
[grid@racdb01 ~]$ srvctl add serverpool -g demopool -l 0 -u 2
B,将数据库加入到自定义的Server Pool 里面:
[grid@racdb01 ~]$ srvctl modify database -d racdb -g demopool
C,检查RAC数据库racdb新的Policy
[grid@racdb02 ~]$ srvctl config database -d racdb
D,使用crsctl检查服务器池的状态
[grid@racdb02 ~]$ crsctl status serverpool -p
NAME=Free
IMPORTANCE=0
MIN_SIZE=0
MAX_SIZE=-1
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:grid:rwx,pgrp:oinstall:rwx,other::r-x
NAME=Generic
IMPORTANCE=0
MIN_SIZE=0
MAX_SIZE=-1
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:grid:r-x,pgrp:oinstall:r-x,other::r-x
NAME=ora.demopool
IMPORTANCE=0
MIN_SIZE=0
MAX_SIZE=2
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r—
E,使用srvctl检查服务器池的状态
[grid@racdb01 ~]$ srvctl config serverpool -g Free
Server pool name: Free
Importance: 0, Min: 0, Max: -1
Candidate server names:
[grid@racdb01 ~]$ srvctl config serverpool -g Generic
PRKO-3160 : Server pool Generic is internally managed as part of administrator-managed database configuration and therefore cannot be queried directly via srvpool object.
[grid@racdb01 ~]$ srvctl config serverpool -g demopool
Server pool name: demopool
Importance: 0, Min: 0, Max: 2
Candidate server names:
备注:使用crsctl为非数据库资源添加服务器池;对数据库资源,需使用srvctl创建服务器池。
F,添加服务器池
对于非数据库资源:
[grid@racdb02 ~]$ crsctl add serverpool sp1 -attr "MIN_SIZE=1, MAX_SIZE=1, IMPORTANCE=1" -f
CRS-2673: Attempting to stop 'ora.racdb.db' on 'racdb01'
CRS-2677: Stop of 'ora.racdb.db' on 'racdb01' succeeded
检查服务器池状态
[grid@racdb02 ~]$ crsctl status serverpool -p
NAME=Free
IMPORTANCE=0
MIN_SIZE=0
MAX_SIZE=-1
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:grid:rwx,pgrp:oinstall:rwx,other::r-x
NAME=Generic
IMPORTANCE=0
MIN_SIZE=0
MAX_SIZE=-1
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:grid:r-x,pgrp:oinstall:r-x,other::r-x
NAME=ora.demopool
IMPORTANCE=0
MIN_SIZE=0
MAX_SIZE=2
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--
NAME=sp1
IMPORTANCE=1
MIN_SIZE=1
MAX_SIZE=1
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:grid:rwx,pgrp:oinstall:rwx,other::r—
删除服务器池:
[grid@racdb02 ~]$ crsctl delete serverpool sp1
备注: 当使用crsctl时,不能指定主机,当使用srvctl时可以。
G,查看服务器状态
[grid@racdb01 ~]$ crsctl status server -f
NAME=racdb01
STATE=ONLINE
ACTIVE_POOLS=Generic ora.racdb ora.racdb_rac_first
STATE_DETAILS=
NAME=racdb02
STATE=VISIBLE
ACTIVE_POOLS=Generic ora.racdb ora.racdb_rac_second
STATE_DETAILS=
参考:
http://www.oracle.com/technetwork/cn/articles/sql/11g-ha-302502-zhs.html
http://www.oracle.com/technetwork/cn/articles/database/policy-managed-cluster-2398581-zhs.html
http://blog.csdn.net/tianlesoftware/article/details/7753607