Oracle12C 服务器池管理

2020-09-11 00:00:00 集群 数据库 节点 服务器 状态

安装集群的节点:


[root@test2 ~]# crsctl status server

NAME=test1

STATE=ONLINE


NAME=test2

STATE=ONLINE


查询每个节点在哪个服务器池

[root@test2 ~]# crsctl status server test1 -f

NAME=test1

MEMORY_SIZE=3960

CPU_COUNT=1

CPU_CLOCK_RATE=2194

CPU_HYPERTHREADING=0

CPU_EQUIVALENCY=1000

DEPLOYMENT=other

CONFIGURED_CSS_ROLE=hub

RESOURCE_USE_ENABLED=1

SERVER_LABEL=

PHYSICAL_HOSTNAME=

STATE=ONLINE

ACTIVE_POOLS=ora.prodpool

STATE_DETAILS=

ACTIVE_CSS_ROLE=hub

个节点在我们自定义的池prodpool中。


[root@test2 ~]# crsctl status server test2 -f

NAME=test2

MEMORY_SIZE=3960

CPU_COUNT=1

CPU_CLOCK_RATE=2194

CPU_HYPERTHREADING=0

CPU_EQUIVALENCY=1000

DEPLOYMENT=other

CONFIGURED_CSS_ROLE=hub

RESOURCE_USE_ENABLED=1

SERVER_LABEL=

PHYSICAL_HOSTNAME=

STATE=ONLINE

ACTIVE_POOLS=Free

STATE_DETAILS=

ACTIVE_CSS_ROLE=hub

第二个节点在系统自带的Free池中,默认区情况下所有的服务器都放入Free池中,当创建新的服务器池后prodpool,根据q

cardinality的设置,从Free池分配Server到新池prodpool中。


查看我们自定义的Pool的信息

[root@test2 ~]# srvctl status serverpool -serverpool prodpool;

Server pool name: prodpool

Active servers count: 1

显示只有一个活跃Server,


查看当前所有的服务器池的信息

[root@test2 ~]# srvctl status serverpool

Server pool name: Free

Active servers count: 1

Server pool name: Generic

Active servers count: 0

Server pool name: prodpool

Active servers count: 1


我们的集群中有2个节点,其中一个在prodpool中,一个在Free池中。


所以我们的集群状态显示只一个节点,如果重启集群先启动那个进入prodpool.


查看当前池的状态

[root@test2 ~]# srvctl config serverpool -g prodpool

Server pool name: prodpool

Importance: 0, Min: 0, Max: 1

Category: hub

Candidate server names:

修改大2Server

[root@test2 ~]# srvctl modify serverpool -g prodpool -l 0 -u 2

查看修改结果

[root@test2 ~]# srvctl config serverpool -serverpool prodpool;

Server pool name: prodpool

Importance: 0, Min: 0, Max: 2

Category: hub

Candidate server names:


此时max2


再次查看数据库状态,发现它运行在2个节点韩

[root@test2 ~]# srvctl status database -d prod

Instance prod_1 is running on node test1

Instance prod_2 is running on node test2


使用crsctl检查所有服务器池的状态

[root@test2 ~]# crsctl status serverpool -p

查询具体某个服务器池状态

[root@test2 ~]# crsctl status serverpool ora.prodpool -p

NAME=ora.prodpool

IMPORTANCE=0

MIN_SIZE=0

MAX_SIZE=2

SERVER_NAMES=

PARENT_POOLS=

EXCLUSIVE_POOLS=

ACL=owner:oracle:rwx,pgrp:dba:rwx,other::r--

SERVER_CATEGORY=ora.hub.category





2,下面举例子来说明如何检查和修改数据库服务器池及Service

A,添加服务器池mypool(小数目,大数目2)

[oracle@racdb01 ~]$ srvctl add serverpool -g mypool -l 0 -u 2

将数据库加入到自定义的Server Pool 里面:

 

B,修改数据库racdb的服务器池

[oracle@racdb01 ~]$ srvctl modify database -d racdb -g mypool

 

C,检查RAC数据库racdb新的Policy

[grid@racdb02 ~]$ srvctl config database -d racdb

相关文章