连接到容器数据库cdb2以关闭它
$ . oraenv
ORACLE_SID = [cdb1] ? cdb2
The Oracle base remains unchanged with value /u01/app/oracle
$ sqlplus / as sysdba
SQL> select name, cdb, con_id from v$database;
NAME CDB CON_ID
--------- --- ----------
CDB2 YES 0
SQL> shutdown immediate
$ ps -ef|grep cdb2
oracle 17296 16741 0 03:41 pts/13 00:00:00 grep cdb2
SQL> startup
SQL> select name, cdb, con_id from v$database;
NAME CDB CON_ID
--------- --- ----------
CDB2 YES 0
$ ps -ef|grep cdb2
oracle 9935 1 0 13:54 ? 00:00:00 ora_pmon_cdb2
oracle 9937 1 0 13:54 ? 00:00:00 ora_psp0_cdb2
oracle 9939 1 0 13:54 ? 00:00:00 ora_vktm_cdb2
oracle 9943 1 0 13:54 ? 00:00:00 ora_gen0_cdb2
oracle 9945 1 0 13:54 ? 00:00:00 ora_mman_cdb2
oracle 9949 1 0 13:54 ? 00:00:00 ora_diag_cdb2
.......
查看PDBs
SQL> select CON_ID, NAME, OPEN_MODE from v$pdbs;
打开所有PDBs
连接到cdb2中的任何PDB,除了PDB$SEED
连接到cdb2中剩下的另一个PDB,除了PDB$SEED之外
SQL> alter pluggable database all open;
SQL> connect sys/oracle_4U@PDB2_1 AS SYSDBA
SQL> connect sys/oracle_4U@PDB2_2 AS SYSDBA
SQL> select CON_ID, NAME, OPEN_MODE from v$pdbs;
SQL> show con_name
以immediate模式关闭PDB2_1
尝试以PDB2_1的用户的身份进行连接。
打开PDB2_1
SQL> alter pluggable database pdb2_1 close immediate;
SQL> connect system/oracle_4U@pdb2_1
SQL> connect / as sysdba
Connected.
SQL> alter pluggable database PDB2_1 open;
Pluggable database altered.
重新连接到pdb2_1,并从SYSTEM.MYTAB中选择数据
SQL> connect system/oracle_4U@PDB2_1
关闭多租户容器数据库cdb2,以打开和关闭具有不同子句的PDB
SQL> CONNECT / AS SYSDBA
SQL> shutdown immediate
SQL> startup NOMOUNT
SQL> alter database mount;
SQL> alter database open;
SQL> alter pluggable database all except pdb2_2 open;(除pdb2_2都打开)