Oracle Exadata Database Service on Dedicated Infrastructure 最新のX11Mアーキテクチャを採用し、AI・分析・OLTP(オンライントランザクション処理)における高性能を実現。Real Application Clusters(RAC)にも対応。
Oracle Database 23ai JSONとリレーショナルを統合した「JSON Relational Duality Views」や、「Oracle AI Vector Search」など、AI時代を見据えた機能を300以上搭載。
SQL> set autotrace traceonly
SP2-0618: セッション識別子が見つかりません。PLUSTRACEロールが有効かを確認してください。
SP2-0611: STATISTICSレポートを使用可能にするときにエラーが発生しました。
このエラーが出る場合は、以下の手順を実行してPLUSTRACEロールを有効にしてください。
SYSDBAでCDBにログインする
ロールを追加するため、SYSDBAでCDBにログインします。
ORACLE_SID=ORCLCDB sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Tue Mar 29 15:44:05 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL>
PDBに切り替える
ロールを作成するPDBに切り替えます。ここではpdb1というPDBに切り替えています。
SQL> alter session set container=pdb1;
Session altered.
SQL>
SQL> @?/sqlplus/admin/plustrce.sql
SQL>
SQL> drop role plustrace;
drop role plustrace
*
ERROR at line 1:
ORA-01919: role 'PLUSTRACE' does not exist
SQL> create role plustrace;
Role created.
SQL>
SQL> grant select on v_$sesstat to plustrace;
Grant succeeded.
SQL> grant select on v_$statname to plustrace;
Grant succeeded.
SQL> grant select on v_$mystat to plustrace;
Grant succeeded.
SQL> grant plustrace to dba with admin option;
Grant succeeded.
SQL>
SQL> set echo off
SQL> grant plustrace to user01;
Grant succeeded.
SQL>
SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
$ ORACLE_SID=ORCLCDB sqlplus / as sysdba
SQL*Plus: Release 19.0.0.0.0 - Production on Sat Mar 19 14:36:24 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL>
念のため、CDBに接続出来ていることを確認しましょう。
SQL> show con_name
CON_NAME
------------------------------
CDB$ROOT
SQL>
SQL> show pdbs
CON_ID CON_NAME OPEN MODE RESTRICTED
---------- ------------------------------ ---------- ----------
2 PDB$SEED READ ONLY NO
3 PDB1 READ WRITE NO
SQL>
PDB1に切り替えます。
SQL> alter session set container=pdb1;
Session altered.
SQL>
PDB1に切り替わったことを確認します。
SQL> show con_name
CON_NAME
------------------------------
PDB1
SQL>
SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
ローカルユーザーを作成する
今度はPDBADMINユーザーでPDB1へログインします。
$ sqlplus pdbadmin/oracle@pdb1
SQL*Plus: Release 19.0.0.0.0 - Production on Sat Mar 19 15:09:27 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Last Successful login time: Sat Mar 19 2022 13:56:08 +00:00
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL>
くどいようですが、念のためPDB1に接続していることを確認します。
SQL> show con_name
CON_NAME
------------------------------
PDB1
SQL>
SQL> GRANT RESOURCE TO user01
2 /
Grant succeeded.
SQL> GRANT CREATE SESSION TO user01
2 /
Grant succeeded.
SQL> GRANT UNLIMITED TABLESPACE TO user01
2 /
Grant succeeded.
SQL>
ロール、権限が付与されているか確認します。
SQL> SELECT GRANTEE, GRANTED_ROLE, ADMIN_OPTION
2 FROM SYS.DBA_ROLE_PRIVS
3 WHERE GRANTEE = 'USER01'
4 /
GRANTEE GRANTED_ROLE ADM
------- ------------ ---
USER01 RESOURCE NO
SQL> SELECT GRANTEE, PRIVILEGE, ADMIN_OPTION
2 FROM SYS.DBA_SYS_PRIVS
3 WHERE GRANTEE = 'USER01'
4 /
GRANTE PRIVILEGE ADM
------ ---------------------------------------- ---
USER01 UNLIMITED TABLESPACE NO
USER01 CREATE SESSION NO
SQL>
意図したとおりに設定できていることが確認できました。
動作確認を行う
user01ユーザーが使用可能か確認するために、一度切断します。
SQL> exit
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
user01ユーザーでログインしてみます。
$ sqlplus user01/password@PDB1
SQL*Plus: Release 19.0.0.0.0 - Production on Sat Mar 19 15:28:15 2022
Version 19.3.0.0.0
Copyright (c) 1982, 2019, Oracle. All rights reserved.
Last Successful login time: Sat Mar 19 2022 15:27:20 +00:00
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
SQL>