We find a bug/Problem while creating new administrator manager RAC 12cR1 while we have one a RAC policy managed already existed on the same cluster.
Description:
I have RAC 3 Nodes EE 12.0.1.2, I have 3 ASM Nodes on Oracle Linux 6u10
- Check the RAC 3 nodes status:
$ crsctl status resource -t
…
ora.orcl.db
1 ONLINE ONLINE host01 Open,STABLE
2 ONLINE ONLINE host02 Open,STABLE
3 ONLINE ONLINE host03 Open,STABLE
….
$ srvctl status database -d orcl
Instance orcl_1 is running on node host01
Instance orcl_2 is running on node host02
Instance orcl_3 is running on node host03
- The RAC 3 nodes is configured on policy managed with Server pools orcldb
$ srvctl config database -d orcl
Database unique name: orcl
Database name: orcl
Oracle home: /u01/app/oracle/product/12.1.0/dbhome_1
Oracle user: oracle
Spfile: +DATA/ORCL/PARAMETERFILE/spfile.292.1022766141
Password file: +DATA/ORCL/PASSWORD/pwdorcl.276.1022765045
Domain:
Start options: open
Stop options: immediate
Database role: PRIMARY
Management policy: AUTOMATIC
Server pools: orcldb
Disk Groups: FRA,DATA
Mount point paths:
Services:
Type: RAC
Start concurrency:
Stop concurrency:
OSDBA group: dba
OSOPER group: oper
Database instances:
Configured nodes:
Database is policy managed
We want to create a new RAC databases with the administrator manager:
First I have RAC database 3 nodes policy base managed, and I have tried to create an other RAC databases but now administrator manager, but I have the notification that:
"Creation of server pool "neworcl" will have effect on the following resources - The operation requires stopping resource 'ora.orcl.db' on server 'host01'."
"Creation of server pool "neworcl" will have effect on the following resources - The operation requires stopping resource 'ora.orcl.db' on server 'host02'."
"Creation of server pool "neworcl" will have effect on the following resources - The operation requires stopping resource 'ora.orcl.db' on server 'host03'."
I have forced the creation of the new RAC database, but the cluster have stopped my all instances policy managed.
- After all; We have this error
$ srvctl status database -db orcl
Database is not running.
- We Cannot Start the database
$ srvctl start database -db orcl
PRCR-1079 : Failed to start resource ora.orcl.db
CRS-2643: The server pool(s) where resource 'ora.orcl.db' could run have no servers
The main problem is the resource orcl has changed to Generic Server pool.
$ srvctl status serverpool -detail
Server pool name: Free
Active servers count: 0
Active server names:
Server pool name: Generic
Active servers count: 3
Active server names: host01,host02,host03
NAME=host01 STATE=ONLINE
NAME=host02 STATE=ONLINE
NAME=host03 STATE=ONLINE
Server pool name: orcldb
Active servers count: 0
Active server names:
Note: After the creation of new RAC, all the nodes has changed from the server pool orcldb to Generic.
$ crsctl status resource -t
ora.orcl.db
1 ONLINE OFFLINE Instance Shutdown,STABLE
2 ONLINE OFFLINE Instance Shutdown,STABLE
3 ONLINE OFFLINE Instance Shutdown,STABLE
But, We can start all the instance manually and not using cluster resource or srvctl command.
Check the service name is running,
$ lsnrctl status
LSNRCTL for Linux: Version 12.1.0.2.0 - Production on 28-OCT-2019 21:11:56
Copyright (c) 1991, 2014, Oracle. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
STATUS of the LISTENER
Alias LISTENER
Version TNSLSNR for Linux: Version 12.1.0.2.0 - Production
Start Date 28-OCT-2019 18:50:14
Uptime 0 days 2 hr. 21 min. 41 sec
Trace Level off
Security ON: Local OS Authentication
SNMP OFF
Listener Parameter File /u01/app/12.1.0/grid/network/admin/listener.ora
Listener Log File /u01/app/grid/diag/tnslsnr/host01/listener/alert/log.xml
Listening Endpoints Summary…
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.0.2.1)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.0.2.104)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=host01.oranux.com.tn)(PORT=5501))(Security=(my_wallet_directory=/u01/app/oracle/product/12.1.0/dbhome_1/admin/wadhah/xdb_wallet))(Presentation=HTTP)(Session=RAW))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=host01.oranux.com.tn)(PORT=5500))(Security=(my_wallet_directory=/u01/app/oracle/admin/orcl/xdb_wallet))(Presentation=HTTP)(Session=RAW))
Services Summary…
Service "+ASM" has 1 instance(s).
Instance "+ASM1", status READY, has 1 handler(s) for this service…
Service "orcl" has 1 instance(s).
Instance "orcl_1", status READY, has 1 handler(s) for this service…
Service "orclXDB" has 1 instance(s).
Instance "orcl_1", status READY, has 1 handler(s) for this service…
Service "wadhah" has 1 instance(s).
Instance "wadhah1", status READY, has 1 handler(s) for this service…
Service "wadhahXDB" has 1 instance(s).
From Oracle: Bug 19184096 ; The issue is Fixed in 12.2
Yes it is an Oracle Bug, and by the way , we have created a new Server pool and add our database to this new pool to be managed by the cluster.
$ srvctl add serverpool -serverpool dbpool -servers "host01,host02,host03"
$ srvctl add database -db orcl -oraclehome $ORACLE_HOME -dbtype RAC -policy AUTOMATIC -serverpool dbpool
$ srvctl config serverpool
Server pool name: Free
Importance: 0, Min: 0, Max: -1
Category:
Candidate server names:
Server pool name: Generic
Importance: 0, Min: 0, Max: -1
Category:
Candidate server names: host01,host02,host03
Server pool name: dbpool
Importance: 0, Min: 0, Max: -1
Category:
Candidate server names: host01,host02,host03
Conclusion
You can recreate a new Server pool policy for your RAC as we have done or you can upgrade your Oracle RAC 12cR1 to 12cR2.