設定AUTOTRACE以及SP2-0618錯誤

brightking716發表於2010-12-10

hr@SHENZHEN> set autot on stat

SP2-0618: Cannot find the Session Identifier. Check PLUSTRACE role is enabled

SP2-0611: Error enabling STATISTICS report

更具提示資訊,PLUSTRACE其實已經建立並且enabled,在檢查role的定義,發現原來是role的許可權沒有賦予給使用者。

SQL> GRANT PLUSTRACE TO "PUBLIC";

[@more@]

以下供參考:

oracle autotrace配置

設定autotrace:
1cd [ORACLE_HOME]/rdbms/admin
2)作為SYSTEM 登入SQL*Plus
3)執行@utlxplan
4)執行CREATE PUBLIC SYNONYM PLAN_TABLE FOR PLAN_TABLE
5)執行GRANT ALL ON PLAN_TABLE TO PUBLIC
如果願意,可以把GRANT TO PUBLIC 中的PUBLIC 替換為某個使用者。透過將PLAN_TABLE 置為public
任何人都可以使用SQL*Plus 進行跟蹤(在我看來這並不是件壞事)。這麼一來,就不需要每個使用者都安裝
自己的計劃表。還有一種做法是,在想要使用AUTOTRACE 的每個模式中分別執行@utlxplan
下一步是建立並授予PLUSTRACE 角色:
1cd [ORACLE_HOME]/sqlplus/admin
2)作為SYS SYSDBA 登入SQL*Plus
3)執行@plustrce
4)執行GRANT PLUSTRACE TO PUBLIC
如果願意,可以把GRANT 命令中PUBLIC 替換為每個使用者。

關於AUTOTRACE
你會自動得到一個AUTOTRACE 報告,其中可能列出SQL 最佳化器所用的執行路徑,以及語句的執行統計
資訊。成功執行SQL DML(即SELECTDELETEUPDATEMERGE INSERT)語句後就會生成這個報告。它
對於監視並調優這些語句的效能很有幫助。

SET AUTOTRACE OFF:不生成AUTOTRACE 報告,這是預設設定。
SET AUTOTRACE ON EXPLAIN
AUTOTRACE 報告只顯示最佳化器執行路徑。
SET AUTOTRACE ON STATISTICS
AUTOTRACE 報告只顯示SQL 語句的執行統計資訊。
SET AUTOTRACE ON
AUTOTRACE 報告既包括最佳化器執行路徑,又包括SQL 語句的執行統計資訊。
SET AUTOTRACE TRACEONLY
:這與SET AUTOTRACE ON 類似,但是不顯示使用者的查詢輸出。

Reference:

http://cooney1212.itpub.net/post/40564/491699

http://yangtingkun.itpub.net/post/468/500437

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12472709/viewspace-1042900/,如需轉載,請註明出處,否則將追究法律責任。

相關文章