解决server pool中没有servers的问题

简介: 某天发现数据库down了,启动,结果提示没有服务器

某天发现数据库down了,启动,结果提示没有服务器

grid@rac1:/home/grid> srvctl start database -d rac
PRCR-1079 : Failed to start resource ora.rac.db
CRS-2643: The server pool(s) where resource 'ora.rac.db' could run have no servers

查看一下服务器都跑到哪儿去了:


grid@rac1:/home/grid>   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=rac1 rac2
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:grid:r-x,pgrp:oinstall:r-x,other::r-x
NAME=ora.scutech
IMPORTANCE=0
MIN_SIZE=0
MAX_SIZE=2
SERVER_NAMES=
PARENT_POOLS=
EXCLUSIVE_POOLS=
ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--
NAME=ora.student
IMPORTANCE=1
MIN_SIZE=0
MAX_SIZE=-1
SERVER_NAMES=rac1 rac2
PARENT_POOLS=Generic
EXCLUSIVE_POOLS=
ACL=owner:oracle:rwx,pgrp:oinstall:rwx,other::r--

原来我的scutech池中的服务器都跑到student池中了,这个池是Generic下面的一个子池。-明白了,有人建了一个新数据库,采用的是admin-managed。查看一下,果然:


grid@rac1:/home/grid> srvctl config database -d student
Database unique name: student
Database name: student
Oracle home: /u01/app/oracle/product/11.2.0/db_1
Oracle user: oracle
Spfile: +DATA/student/spfilestudent.ora
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: student
Database instances: student2,student1
Disk Groups: DATA,DBACKUP3_20190920_174349,DBACKUP3_20190921_173611
Mount point paths:
Services:
Type: RAC
Database is administrator managed



修改一下,把这个数据库改成policy-managed,并且和我前面的库用一个pool:


/u01/app/11.2.0/grid/bin/srvctl modify database -d student -g scutech


要用超级用户执行这个命令,不然提示权限不够。

然后,问题解决了。

相关文章
|
应用服务中间件 Android开发
“Server Tomcat v9.0 Server at localhost was unable to start within 45 seconds“的解决方案
“Server Tomcat v9.0 Server at localhost was unable to start within 45 seconds“的解决方案
517 0
“Server Tomcat v9.0 Server at localhost was unable to start within 45 seconds“的解决方案
如何得到当前application server的host name和port number
如何得到当前application server的host name和port number
146 0
如何得到当前application server的host name和port number
|
NoSQL 关系型数据库 Shell
|
网络协议 区块链
p2p_server
以太坊系列之十九 对p2p模块server的理解 type transport interface { // The two handshakes. doEncHandshake(prv *ecdsa.
959 0
|
Linux 开发工具 Shell
|
数据安全/隐私保护 网络协议 网络安全
|
网络协议 Oracle 关系型数据库