Initial installation of Oracle 12.2 RAC database.
Log in to the 1th node in the RAC database
Press CTRL + C to copy the code
Try to connect the PDB via scan IP (plug_test), sometimes log in to the database plug_test, but sometimes you will not be able to log in and report the following error:
$ sqlplus robert/[email protected]_test
SQL*Plus: Release 12.2.0.1.0 Production on Thu Apr 13 19:04:18 2017
Copyright (c) 1982, 2016, Oracle. All rights reserved.
ERROR:
ORA-01033: ORACLE initialization or shutdown in progress
Process ID: 0
Session ID: 0 Serial number: 0
Enter user-name:
ERROR:
ORA-01017: invalid username/password; logon denied
Enter user-name:
ERROR:
ORA-01017: invalid username/password; logon denied
SP2-0157: unable to CONNECT to ORACLE after 3 attempts, exiting SQL*Plus
The confusion begins here. I don't know why I can log in sometimes, and sometimes I can't log in.
Log in to the second node to view the PDB status:
SQL> select name,open_mode from v$pdbs;
NAME OPEN_MODE
------------------------------ ----------
PDB$SEED READ ONLY
DB12PDB1 MOUNTED
DB12PDB2 MOUNTED
PLUG_TEST MOUNTED
SQL>
As can be seen from here, on the second node, the instance plug_test is in the mounted state
View Gv$pdbs:
SQL> select inst_id,name,open_mode from gv$pdbs;
INST_ID NAME OPEN_MODE
---------- ------------------------------ ----------
1 PDB$SEED READ ONLY
1 DB12PDB1 MOUNTED
1 DB12PDB2 MOUNTED
1 PLUG_TEST READ WRITE
2 PDB$SEED READ ONLY
2 DB12PDB1 MOUNTED
2 DB12PDB2 MOUNTED
2 PLUG_TEST MOUNTED
8 rows selected.
SQL>
As you can see, the above problem arises because the PDB (Plug_test) instance is turned on only in Node 1. When the PDB is connected through the scan IP, the scan IP will be routed randomly, and if it is routed to the second node, an error will not be connected.
To verify this problem, a test step has been added. Directly through the VIP connection of Node 1, you will not report the above error.
By looking at the ALTER pluggable database syntax, you can see that when you use this command, you also specify the parameter instances. If not added, the default is the local instance.
So, start the Plug_test instance from the second node.
Alter pluggable database Plug_test open instances= (' db12c2 ');
If you want to start all instances, you can use the command:
sql> Alter pluggable database plug_test close instances=all;
Or
sql> alter pluggable database plug_test OPEN instances= (' db12c1 ', ' db12c2 ');
12C--ora-01033:oracle initialization or shutdown in progress