管理人Kのひとりごと

デジモノレビューやプログラミングや写真など

EMExpressを使えるようにする(PDBでも)(Oracle)

DBCDでDBを作るときにEMExpressを利用可能にする設定を忘れていたらしかったので、手動で設定

https://hostname:5500/em/で開けなかった

上記URLを指定したらこんな感じ
f:id:ksk1130:20190302112906p:plain

もろもろの設定

# バージョン
SQL> select banner_full from v$version;

BANNER_FULL
--------------------------------------------------------------------------------
Oracle Database 18c Enterprise Edition Release 18.0.0.0.0 - Production
Version 18.3.0.0.0

# ディスパッチャ確認
SQL> show parameter dispatcher

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
dispatchers                          string      (PROTOCOL=TCP) (SERVICE=orclXDB)

# XDBの登録ポート確認
SQL> SELECT DBMS_XDB_CONFIG.getHTTPsPort,DBMS_XDB_CONFIG.getHTTPPort FROM dual;

GETHTTPSPORT GETHTTPPORT
------------ -----------
           0           0

# 接続済みコンテナ確認
SQL> show con_name

CON_NAME
------------------------------
CDB$ROOT

# CDBに対してHTTPSポート:5501を設定
SQL> exec DBMS_XDB_CONFIG.SETHTTPSPORT(5501);

PL/SQLプロシージャが正常に完了しました。

# 設定内容確認
SQL> SELECT DBMS_XDB_CONFIG.getHTTPsPort,DBMS_XDB_CONFIG.getHTTPPort FROM dual;

GETHTTPSPORT GETHTTPPORT
------------ -----------
        5501           0

再挑戦も、PDBを見られず

先ほどと表示が変わった

f:id:ksk1130:20190302112907p:plain

「コンテナ名」があるので、入力してみた

f:id:ksk1130:20190302112908p:plain
f:id:ksk1130:20190302112909p:plain

XDBの認証とは...?

f:id:ksk1130:20190302112910p:plain

思い当たるID/PWを入力してもダメだったので、SYSでログイン

f:id:ksk1130:20190302112911p:plain

一応PDBに遷移できそうだったのでトライ

f:id:ksk1130:20190302112912p:plain

真っ白...リスナを再起動しても真っ白のままだった

f:id:ksk1130:20190302112913p:plain

PDBにもポートを割り当ててみる

# PDB1へ接続
SQL> alter session set container=PDB1;
Sessionが変更されました。

SQL> show con_name
CON_NAME
------------------------------
PDB1

# PDB1に対してHTTPSポート:5502を設定
SQL> exec DBMS_XDB_CONFIG.SETHTTPSPORT(5502);
PL/SQLプロシージャが正常に完了しました。

SQL>
SQL>  SELECT DBMS_XDB_CONFIG.getHTTPsPort,DBMS_XDB_CONFIG.getHTTPPort FROM dual;

GETHTTPSPORT GETHTTPPORT
------------ -----------
        5502           0

# ポートの割り当て確認
[oracle@hostname ~]$ lsnrctl status | grep -i port=55
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=hostname)(PORT=5501))
  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=hostname)(PORT=5502))

リトライ 「コンテナ名」の指定はないようだ

f:id:ksk1130:20190302112914p:plain

お、見慣れたEMExpressの画面

f:id:ksk1130:20190302112915p:plain
PDBごとにポートを割り当てればよいということか。