SQL> set autotrace traceonly explain
SP2-0613: 無法驗證 PLAN_TABLE 格式或實體
cuug每周五晚8點都有免費網絡課程,如需了解可點擊cuug官網。
SP2-0611: 啟用EXPLAIN報告時出錯
解決方法:
1. ? ? ?以SYS用戶登錄
CONNECT / @ as SYSDBA ;
1. 創建PLAN_TABLE(如果未創建)
運行utlxplan.sql(Oracle_HOME/rdbms/admin下)腳本;
2. 創建plustrace角色(如果未創建)
執行plustrce.sql(ORACLE_HOME/sqlplus/admin/plustrce.sql)腳本;
3. 將plustrace role賦給當前用戶
grant plustrace to scott;或grant plustrace to public;
具體操作
1、創建基礎表
運行$ORACLE_HOME/rdbms/admin/utlxplan腳本來創建plan_table
scott@ORCL> conn system/RedHat ?--使用system帳戶登陸
Connected.
system@ORCL> start $ORACLE_HOME/rdbms/admin/utlxplan ?--執行utlxplan腳本
Table created.
system@ORCL> create public synonym plan_table for plan_table; ?--為表plan_table創建公共同義詞
Synonym created.
system@ORCL> grant all on plan_table to public; ?--將同義詞表plan_table授予給所有用戶
Grant succeeded.
2、創建角色
運行$ORACLE_HOME/sqlplus/admin/plustrce.sql腳本
system@ORCL> conn / as sysdba ?--使用sysdba帳戶登陸
onnected.
sys@ORCL> start $ORACLE_HOME/sqlplus/admin/plustrce.sql ?--執行創建角色的腳本
sys@ORCL> create role plustrace;
Role created.
sys@ORCL>
sys@ORCL> grant select on v_$sesstat to plustrace;
Grant succeeded.
sys@ORCL> grant select on v_$statname to plustrace;
Grant succeeded.
sys@ORCL> grant select on v_$mystat to plustrace;
Grant succeeded.
sys@ORCL> grant plustrace to dba with admin option;
Grant succeeded.