「Oracle21c」「ORA-65096:共通ユーザーまたはロール名が無効です」の対処方法
環境
Oracle Database 21c Express Edition
Windows 11 Pro 21H2 64bit
エラー現象
SQL> CREATE USER arkuser 2 IDENTIFIED BY arkpwd 3 DEFAULT TABLESPACE tabsp1 4 TEMPORARY TABLESPACE temp 5 QUOTA UNLIMITED ON tabsp1; CREATE USER arkuser * 行1でエラーが発生しました。: ORA-65096: 共通ユーザーまたはロール名が無効です
解決方法
1.「show con_name;」で現在接続されているデータベースを確認します。
SQL> show con_name; CON_NAME ------------------------------ CDB$ROOT
2.「select name, open_mode from v$pdbs;」でPDBの名前と現在のOPEN_MODEを確認します。
SQL> select name, open_mode from v$pdbs; NAME -------------------------------------------------------------------------------- OPEN_MODE -------------------- PDB$SEED READ ONLY XEPDB1 READ WRITE
3.PDBの名前が「XEPDB1」というのがわかったのでデータベースの接続先を「XEPDB1」へ変更します。
SQL> alter session set container = xepdb1; セッションが変更されました。
4.「show con_name;」を実行して接続先が変更されていることを確認します。
SQL> show con_name; CON_NAME ------------------------------ XEPDB1
5.ユーザーを作成します。
SQL> CREATE USER arkuser 2 IDENTIFIED BY arkpwd 3 DEFAULT TABLESPACE tabsp1 4 TEMPORARY TABLESPACE temp 5 QUOTA UNLIMITED ON tabsp1; ユーザーが作成されました。