Check PDB cluster
Check DB status
This tutorial shows how to check pdb01 database on PDB cluster. This can be useful in case of any problem with the database and also to understand how the cluster works.
- connect as orapdm to sundb07 or sundb08 (pdb cluster)
Check database
bash-2.05$ ps -ef | grep smon
this is as it should like is db is up:
orapdm 1457 1 0 Oct 31 ? 0:35 ora_smon_pdb01-2
orapdm 13383 13348 0 10:08:48 pts/1 0:00 grep smon
- Check if the ORACLE_SID is correct. It should be pdb01-1 on sundb07 and pdb01-2 on sundb08
bash-2.05$ env | grep SID
ORACLE_SID=pdb01-2
Then you connect locally to the database.
bash-2.05$ sqlplus "/ as sysdba"
SQL> select host_name, instance_name from gv$instance;
HOST_NAME INSTANCE_NAME
--------------- ----------------
sundb08 pdb01-2
sundb07 pdb01-1
Check the listener
- On both nodes (sundb07 and sundb08) do:
bash-2.05$ lsnrctl service
This should give an output similar to the following. The important things to look for is:
* Service "pdb01" has 2 instance(s).
* Service "pdb01-2" has 1 instance(s).
LSNRCTL for Solaris: Version 9.2.0.6.0 - Production on 02-FEB-2005 10:33:46
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:0 refused:0
LOCAL SERVER
Service "pdb01" has 1 instance(s).
Instance "pdb01-2", status READY, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:471615 refused:0 state:ready
LOCAL SERVER
Service "pdb01-2" has 1 instance(s).
Instance "pdb01-2", status UNKNOWN, has 1 handler(s) for this service...
Handler(s):
"DEDICATED" established:1662 refused:0
LOCAL SERVER
The command completed successfully
Check the gsd
bash-2.05$ gsdctl stat
GSD is running on the local node
Check Veritas Volume Manager on the PDB cluster
On the PDB cluster the software product "Veritas Volume Manager" and "Veritas Cluster Manager" are installed. These software packages are used to:
- Divide the disks connected to the system into volumes
- Provide the cluster with shared volumes (used both by sundb07 and sundb08 at the same time)
The Veritas Cluster Manager (VCM) is running on both sundb07 and sundb08. One of the hosts will take the role "Master" and the other will be "Slave".
Checking for errors
All disk operations should be done on the CVS "Master" node. The other node cannot modify the volumes.
To check which node is master, issue the following command:
bash-2.05$ sudo vxdctl -c mode
mode: enabled: cluster active - MASTER
To check if there are any problems with any volume, issue the command:
bash-2.05$ sudo vxprint | more
Disk group: rootdg
TY NAME ASSOC KSTATE LENGTH PLOFFS STATE TUTIL0 PUTIL0
dg rootdg rootdg - - - - - -
dm mirrordisk2 c1t1d0s2 - 71124291 - - - -
dm rootdisk2 c1t0d0s2 - 71124291 - - - -
v global2 fsgen ENABLED 615357 - ACTIVE - -
pl global2-01 global2 ENABLED 615357 - ACTIVE - -
All volumes should have either the state "-", "ACTIVE" or "LOGONLY".
Start pdb01 database
To startup the RAC database on the cluster there are three things to do on both nodes:
- Startup the listener
- Startup gsd (which controls the remote memory access for the RAC)
- Startup the instance
Start the listener
- To start the listener on sundb07
bash-2.05$ lsnrctl start LISTENER_sundb07
LSNRCTL for Solaris: Version 9.2.0.3.0 - Production on 07-NOV-2003 10:16:58
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Starting /db/u01/app/oracle/product/9.2.0.1.0-32bit/bin/tnslsnr: please wait...
TNSLSNR for Solaris: Version 9.2.0.3.0 - Production
System parameter file is /db/u01/app/oracle/product/9.2.0.1.0-32bit/network/admin/listener.ora
Log messages written to /db/u01/app/oracle/product/9.2.0.1.0-32bit/network/log/listener_sundb07.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sundb07)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=sundb07.cern.ch)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER_sundb07
Version TNSLSNR for Solaris: Version 9.2.0.3.0 - Production
Start Date 07-NOV-2003 10:16:58
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security OFF
SNMP OFF
Listener Parameter File /db/u01/app/oracle/product/9.2.0.1.0-32bit/network/admin/listener.ora
Listener Log File /db/u01/app/oracle/product/9.2.0.1.0-32bit/network/log/listener_sundb07.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sundb07)(PORT=1521)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "pdb01-1" has 1 instance(s).
Instance "pdb01-1", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
- To start the listener on sundb08
bash-2.05$ lsnrctl start LISTENER_sundb08
LSNRCTL for Solaris: Version 9.2.0.3.0 - Production on 07-NOV-2003 10:16:58
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Starting /db/u01/app/oracle/product/9.2.0.1.0-32bit/bin/tnslsnr: please wait...
TNSLSNR for Solaris: Version 9.2.0.3.0 - Production
System parameter file is /db/u01/app/oracle/product/9.2.0.1.0-32bit/network/admin/listener.ora
Log messages written to /db/u01/app/oracle/product/9.2.0.1.0-32bit/network/log/listener_sundb08.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sundb08)(PORT=1521)))
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=sundb08.cern.ch)(PORT=1521)))
STATUS of the LISTENER
------------------------
Alias LISTENER_sundb08
Version TNSLSNR for Solaris: Version 9.2.0.3.0 - Production
Start Date 07-NOV-2003 10:16:58
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security OFF
SNMP OFF
Listener Parameter File /db/u01/app/oracle/product/9.2.0.1.0-32bit/network/admin/listener.ora
Listener Log File /db/u01/app/oracle/product/9.2.0.1.0-32bit/network/log/listener_sundb08.log
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=sundb08)(PORT=1521)))
Services Summary...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
Service "pdb01-2" has 1 instance(s).
Instance "pdb01-2", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
Start gsd
bash-2.05$ gsdctl start
Successfully started GSD on local node
Start the database
bash-2.05$ env | grep SID
ORACLE_SID=pdb01-2
bash-2.05$ sqlplus "/ as sysdba"
SQL*Plus: Release 9.2.0.3.0 - Production on Fri Nov 7 10:30:14 2003
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Connected to:
Oracle9i Enterprise Edition Release 9.2.0.3.0 - Production
With the Partitioning, Real Application Clusters, OLAP and Oracle Data Mining options
JServer Release 9.2.0.3.0 - Production
SQL> startup
ORACLE instance started.
Total System Global Area 252777592 bytes
Fixed Size 451704 bytes
Variable Size 117440512 bytes
Database Buffers 134217728 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.
SQL>
- Starting the database on the second node
bash-2.05$ env | grep SID
ORACLE_SID=pdb01-1
bash-2.05$ sqlplus "/ as sysdba"
SQL*Plus: Release 9.2.0.3.0 - Production on Fri Nov 7 10:30:14 2003
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
Connected to:
Oracle9i Enterprise Edition Release 9.2.0.3.0 - Production
With the Partitioning, Real Application Clusters, OLAP and Oracle Data Mining options
JServer Release 9.2.0.3.0 - Production
SQL> startup
ORACLE instance started.
Total System Global Area 252777592 bytes
Fixed Size 451704 bytes
Variable Size 117440512 bytes
Database Buffers 134217728 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.
SQL>