Dynamic_Performance_Tables_not_accessible_问题_解决不能动态统计
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                Dynamic_Performance_Tables_not_accessible_问题_解决不能动态统计
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                
                            
                            
                            Dynamic Performance Tables not accessible,?Automatic Statistics Disabled for this session?You can disable statistics in the preference menu,or obtanin select?priviliges on the v$session,v$sesstat and v$statname tables
第一種處理方法(不推薦)就是在報錯的Error對話框中將?Don't show this message again?選項選中,下次就不在提示這個錯誤了。這種方法應(yīng)該可以叫做?鴕鳥方式?的處理方法。沒有從根本上解決這個問題。
第二種處理方法(可以采納)報錯信息中描述的非常詳細(xì),原因是動態(tài)性能表沒有權(quán)利被訪問導(dǎo)致的問題,因此,我們通過把所需訪問權(quán)限賦予給具體用戶的方法來解決這個問題。這里給出我能想到的三種具體處理方法。大家可以繼續(xù)補充。1)如果只是某一具體用戶有權(quán)限查詢這三個動態(tài)性能視圖,可以如下進(jìn)行操作這里注意一下:我們授權(quán)的視圖是V_$session不是V$session,因為V$session是同名不是具體的視圖。否則您會收到下面這個錯誤。sys@ora10g> grant select on V$session to user_sec;grant select on V$session to user_secERROR 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)可以使用下面這個?簡單粗暴?的方法處理之。SQL> grant SELECT ANY DICTIONARY to user_sec;3)以上兩種方法是針對特定用戶的處理方法,如果想讓所有用戶(不局限在上面的user_sec用戶)都能夠查詢這三個動態(tài)性能視圖,可以通過將查詢權(quán)限授權(quán)給public方法來實現(xiàn),操 作如下。這樣就可以保證所有開發(fā)人員都不會再出現(xiàn)上述的報錯信息了。SQL> grant select on V_$session to public;SQL> grant select on V_$sesstat to public;SQL> grant select on V_$statname to public;
第三種方法(推薦)徹底禁掉PL/SQL Developer的這個功能。方法如下:導(dǎo)航到Tools --> Preferences --> Options找到?Automatic Statistics?選項,將其前面的小對勾去掉,然后點擊?Apply?和?OK?保存退出。
解決方法如下:grant SELECT ANY DICTIONARY to username;因為v$開頭的屬于數(shù)據(jù)字典,通常稱為動態(tài)性能視圖。解決方法是:用dba執(zhí)行下面這句或者在pl/sql中找到username,然后在edit中選擇?System privileges?tab,增加一個?select any dictionary?權(quán)限。grant SELECT ANY DICTIONARY to username;
                            
                        
                        
                        第一種處理方法(不推薦)就是在報錯的Error對話框中將?Don't show this message again?選項選中,下次就不在提示這個錯誤了。這種方法應(yīng)該可以叫做?鴕鳥方式?的處理方法。沒有從根本上解決這個問題。
第二種處理方法(可以采納)報錯信息中描述的非常詳細(xì),原因是動態(tài)性能表沒有權(quán)利被訪問導(dǎo)致的問題,因此,我們通過把所需訪問權(quán)限賦予給具體用戶的方法來解決這個問題。這里給出我能想到的三種具體處理方法。大家可以繼續(xù)補充。1)如果只是某一具體用戶有權(quán)限查詢這三個動態(tài)性能視圖,可以如下進(jìn)行操作這里注意一下:我們授權(quán)的視圖是V_$session不是V$session,因為V$session是同名不是具體的視圖。否則您會收到下面這個錯誤。sys@ora10g> grant select on V$session to user_sec;grant select on V$session to user_secERROR 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)可以使用下面這個?簡單粗暴?的方法處理之。SQL> grant SELECT ANY DICTIONARY to user_sec;3)以上兩種方法是針對特定用戶的處理方法,如果想讓所有用戶(不局限在上面的user_sec用戶)都能夠查詢這三個動態(tài)性能視圖,可以通過將查詢權(quán)限授權(quán)給public方法來實現(xiàn),操 作如下。這樣就可以保證所有開發(fā)人員都不會再出現(xiàn)上述的報錯信息了。SQL> grant select on V_$session to public;SQL> grant select on V_$sesstat to public;SQL> grant select on V_$statname to public;
第三種方法(推薦)徹底禁掉PL/SQL Developer的這個功能。方法如下:導(dǎo)航到Tools --> Preferences --> Options找到?Automatic Statistics?選項,將其前面的小對勾去掉,然后點擊?Apply?和?OK?保存退出。
解決方法如下:grant SELECT ANY DICTIONARY to username;因為v$開頭的屬于數(shù)據(jù)字典,通常稱為動態(tài)性能視圖。解決方法是:用dba執(zhí)行下面這句或者在pl/sql中找到username,然后在edit中選擇?System privileges?tab,增加一個?select any dictionary?權(quán)限。grant SELECT ANY DICTIONARY to username;
總結(jié)
以上是生活随笔為你收集整理的Dynamic_Performance_Tables_not_accessible_问题_解决不能动态统计的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 主键字母自动生成函数
- 下一篇: Node出错导致运行崩溃的解决方案
