夢幻之旅

          DEBUG - 天道酬勤

             :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            671 隨筆 :: 6 文章 :: 256 評論 :: 0 Trackbacks

          今天在使用PL/SQL Developer工具登陸一個新創建的用戶進行查詢時,報出以下錯誤(PL/SQL Developer版本:7.1.5 1403):

          Dynamic Performance Tables not accessible,

          Automatic Statistics disabled for this session

           


          You can disable statistics in the preference menu, or obtain select

          priviliges on the V$session,V$sesstat and V$statname tables

          這個報錯信息在不同的PL/SQL Developer版本都會出現,從上面詳細的報錯提示信息中我們可以判斷得到,報錯原因不在工具本身。

          在此,詳細記錄一下這個小問題的三種處理方法。

          1.第一種處理方法(不推薦)
          就是在報錯的Error對話框中將“Don't show this message again”選項選中,下次就不在提示這個錯誤了。

          這種方法應該可以叫做“鴕鳥方式”的處理方法。沒有從根本上解決這個問題。

          2.第二種處理方法(可以采納)
          報錯信息中描述的非常詳細,原因是動態性能表沒有權利被訪問導致的問題,因此,我們通過把所需訪問權限賦予給具體用戶的方法來解決這個問題。

          這里給出我能想到的三種具體處理方法。大家可以繼續補充。

          1)如果只是某一具體用戶有權限查詢這三個動態性能視圖,可以如下進行操作
          這里注意一下:我們授權的視圖是V_$session不是V$session,因為V$session是同名不是具體的視圖。否則您會收到下面這個錯誤。

          sys@ora10g> grant select on V$session  to user_sec;

          grant select on V$session  to user_sec

                          *

          ERROR at line 1:

          ORA-02030: can only select from fixed tables/views

          正確的授權方法如下:

          SQL> grant select on V_$session  to user_sec;

          SQL> grant select on V_$sesstat  to user_sec;

          SQL> grant select on V_$statname to user_sec;

          2)可以使用下面這個“簡單粗暴”的方法處理之。
          SQL> grant SELECT ANY DICTIONARY to user_sec;

          3)以上兩種方法是針對特定用戶的處理方法,如果想讓所有用戶(不局限在上面的user_sec用戶)都能夠查詢這三個動態性能視圖,可以通過將查詢權限授權給public方法來實現,操作如下。這樣就可以保證所有開發人員都不會再出現上述的報錯信息了。
          SQL> grant select on V_$session  to public;

          SQL> grant select on V_$sesstat  to public;

          SQL> grant select on V_$statname to public;

          3.第三種方法(推薦)
          徹底禁掉PL/SQL Developer的這個功能。

          方法如下:

          導航到Tools --> Preferences --> Options

          找到“Automatic Statistics”選項,將其前面的小對勾去掉,然后點擊“Apply”和“OK”保存退出。

          4.小結
          之所以書寫這個文章,只是給出一個處理問題的一般方法,這就是:“充分挖掘具體報錯信息,從各種表面現象入手,逐步深入,最終得到滿意的處理結果。”

          最后談一下DBA與數據庫管理開發工具(如PL/SQL Developer、Toad等等)的關系。

          如果您是純開發DBA,那么強烈建議您認真的研究這些優秀高級工具的每一個細節,因為這樣可以大大的提高您的工作效率。


          本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/hemingwang0902/archive/2010/09/26/5908259.aspx

          posted on 2010-11-06 21:52 HUIKK 閱讀(257) 評論(0)  編輯  收藏 所屬分類: DataBase
          主站蜘蛛池模板: 株洲市| 永平县| 左贡县| 锦州市| 兖州市| 涿鹿县| 大埔区| 英山县| 阿坝县| 论坛| 寿宁县| 平阴县| 文山县| 子长县| 弥渡县| 京山县| 怀化市| 望江县| 沧州市| 河源市| 常宁市| 北辰区| 潞西市| 菏泽市| 宁陕县| 万安县| 汉中市| 武强县| 墨脱县| 扬州市| 和硕县| 灌云县| 博白县| 凌源市| 莱芜市| 巫溪县| 鹤庆县| 凤庆县| 大英县| 红安县| 抚顺县|