日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

PL\SQL 打开时出现动态执行表不可访问,本会话的自动统计被禁止

發布時間:2024/4/15 数据库 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PL\SQL 打开时出现动态执行表不可访问,本会话的自动统计被禁止 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

PL\SQL 打開時出現"動態執行表不可訪問,本會話的自動統計被禁止"

博客分類:? 數據庫 SQLBlog

轉自:http://hi.baidu.com/victorlin23/blog/item/217c133ee5654ee8838b1363.html



這個報錯信息在不同的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”保存退出

轉載于:https://blog.51cto.com/ahead51/771880

總結

以上是生活随笔為你收集整理的PL\SQL 打开时出现动态执行表不可访问,本会话的自动统计被禁止的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。