PL\SQL 打开时出现动态执行表不可访问,本会话的自动统计被禁止
PL\SQL 打開(kāi)時(shí)出現(xiàn)"動(dòng)態(tài)執(zhí)行表不可訪(fǎng)問(wèn),本會(huì)話(huà)的自動(dòng)統(tǒng)計(jì)被禁止"
博客分類(lèi):? 數(shù)據(jù)庫(kù) SQLBlog轉(zhuǎn)自:http://hi.baidu.com/victorlin23/blog/item/217c133ee5654ee8838b1363.html
這個(gè)報(bào)錯(cuò)信息在不同的PL/SQL Developer版本都會(huì)出現(xiàn),從上面詳細(xì)的報(bào)錯(cuò)提示信息中我們可以判斷得到,報(bào)錯(cuò)原因不在工具本身。
在此,詳細(xì)記錄一下這個(gè)小問(wèn)題的三種處理方法。
1.第一種處理方法(不推薦)
就是在報(bào)錯(cuò)的Error對(duì)話(huà)框中將“Don't show this message again”選項(xiàng)選中,下次就不在提示這個(gè)錯(cuò)誤了。
這種方法應(yīng)該可以叫做“鴕鳥(niǎo)方式”的處理方法。沒(méi)有從根本上解決這個(gè)問(wèn)題。
2.第二種處理方法(可以采納)
報(bào)錯(cuò)信息中描述的非常詳細(xì),原因是動(dòng)態(tài)性能表沒(méi)有權(quán)利被訪(fǎng)問(wèn)導(dǎo)致的問(wèn)題,因此,我們通過(guò)把所需訪(fǎng)問(wèn)權(quán)限賦予給具體用戶(hù)的方法來(lái)解決這個(gè)問(wèn)題。
這里給出我能想到的三種具體處理方法。大家可以繼續(xù)補(bǔ)充。
1)如果只是某一具體用戶(hù)有權(quán)限查詢(xún)這三個(gè)動(dòng)態(tài)性能視圖,可以如下進(jìn)行操作
這里注意一下:我們授權(quán)的視圖是V_$session不是V$session,因?yàn)閂$session是同名不是具體的視圖。否則您會(huì)收到下面這個(gè)錯(cuò)誤。
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
正確的授權(quán)方法如下:
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)可以使用下面這個(gè)“簡(jiǎn)單粗暴”的方法處理之。
SQL> grant SELECT ANY DICTIONARY to user_sec;
3)以上兩種方法是針對(duì)特定用戶(hù)的處理方法,如果想讓所有用戶(hù)(不局限在上面的user_sec用戶(hù))都能夠查詢(xún)這三個(gè)動(dòng)態(tài)性能視圖,可以通過(guò)將查詢(xún)權(quán)限授權(quán)給public方法來(lái)實(shí)現(xiàn),操作如下。這樣就可以保證所有開(kāi)發(fā)人員都不會(huì)再出現(xiàn)上述的報(bào)錯(cuò)信息了。
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的這個(gè)功能。
方法如下:
導(dǎo)航到Tools --> Preferences --> Options
找到“Automatic Statistics”選項(xiàng),將其前面的小對(duì)勾去掉,然后點(diǎn)擊“Apply”和“OK”保存退出
轉(zhuǎn)載于:https://blog.51cto.com/ahead51/771880
總結(jié)
以上是生活随笔為你收集整理的PL\SQL 打开时出现动态执行表不可访问,本会话的自动统计被禁止的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: LINQ 的查询执行何时是延迟执行,何时
- 下一篇: mysql常用命令操作