$ lsnrctl start
・・・
STATUS of the LISTENER
------------------------
・・・
Listener Parameter File /usr/oracle/database/network/admin/listener.ora
Listener Log File /u01/app/oracle/diag/tnslsnr/******/listener/alert/log.xml
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=******)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1521)))
The listener supports no services
The command completed successfully
次にCDBを起動
$ sqplus /NOLOG
SQL> startup;
*******
プラガブル・データベースの状態をチェック
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 ****** READ WRITE NO
とりあえず接続先をチェック。※多分 CDB$ROOTのハズ
SQL> show CON_NAME;
プラガブル・データベースを起動してみよう
SQL> alter pluggable database ****** open;
Pluggable database altered.
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 ****** READ WRITE NO
CDB作成時に作られたPDBは管理者名が不明で表領域もあるのかどうかも判らなかったので、
dbcaコマンドで別途にPDB(PDB1,PDB2)を追加してみた。
PDBの管理者名はpdbadminとか何となく判るものを作っておく。
表領域の作成にチェックを入れれば作ってくれるので便利。※手順は省略。
ここで、lsnrctl status を何度か叩くと、最後に各PDB名っぽいSERVICE_NAMEの情報が拾えるので
SQL> alter session set container=PDB1;
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
4 PDB1 READ WRITE NO
※もう自分しかみえなくなっている
※CDBに戻ってPDBをこの状態で、自動起動にする
SQL> alter session set container=CDB$ROOT;
SQL> alter pluggable database all save state;
プラガブル・データベースを終了してみよう
SQL> alter pluggable database ****** close;
Pluggable database altered.
SQL> show pdbs;
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 ****** MOUNTED