【问题处理】PL/SQL Developer报错Dynamic Performance Tables not accessible

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

 

今天,开发团队里的几位同事向我反映,在使用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”保存退出。
PLSQL Developer报“动态执行表不可访问,本会话的自动统计被禁止”的四种解决方案 用PLSQL Developer连接数据库,若用sys用户登录并操作则正常,若用普通用户比如haishu登录并创建一个表则报错“动态执行表不可访问,本会话的自动统计被禁止。在执行菜单里你可以禁止统计,或在v$session,v$sesstat和v$statname表里获得选择权限。”(3种授权方案、1种禁止统计方案) 一、赋予相应权限 在‘搜索’处输入sqlplus(监听已启动) 若监听... 阅读详情

相关推荐

使用orcle遇到的错误

第一次用PLSQL Developer连接数据库,若用sys用户登录并操作则正常,若用普通用户比如haishu登录并创建一个表则报错“动态执行表不可访问,本会话的自动统计被禁止。在执行菜单里你可以禁止统计,或在v$session,v$sesstat和v$statname表里获得选择权限。”

PLSQL:动态执行表不可访问,本会话的自动统计被禁止。

如上图所示,该报错信息在不同的PL/SQL Developer版本都会出现。根据报错提示信息,可知报错原因不在工具本身。 以下提供几种解决该报错的方案: 禁止展示(不推荐) 在报错的Error对话框中,勾选 ✅ Don't show this massage again ,下次就不会再显示该错误。 但该错误并没有从本质上被解决。 赋予用户权限 如报错信息所描述的,其报错原因是“动态性能表没有权利被访问”导致的问题。因此,可以通过把所需权限赋予给具体用户的方法来解决该...

qq_39316940的博客 8344

表提示不能执行,PLSQL Developer

用PLSQL Developer时,表提示不能执行,应该是几个表的权限不够,通过执行以下代码,应该就可以运行啦

Oracle动态执行表不可访问是什么意思,本会话的自动统计会被禁用...

Oracle动态执行表不可访问是什么意思,本会话的自动统计会被禁用..1、问题描述2. 解决方法 1、问题描述 动态执行表不可访问是什么意思,本会话的自动统计会被禁用,或在vsession,vsession,vsession,vsesstat和v$stance表里获取权限 2. 解决方法 原因是: vsession,vsession,vsession,vsesstat和v$statname这三张表无法被授权, 所以没权限访问, 需要对这三张表进行授权。 解决:以超级管理员身份sys, 连接为SYSDBA进

weixin_43525516的博客 4523

每一次登录Pl/sql,查询报错Dynamic Performance Tables not accessible...之后再查询时就好了

报错截图:   当前解决方案:   utomatic statistics 含义: When you execute a statement in a SQL Window or in a Test Window, PL/SQL Developer will automatically generate a statistic report of

数据就是一切 3354

Dynamic Performance Tables not accessible...

报错截图: 当前解决方案: Automatic statistics 含义:When you execute a statement in a SQL Window or in a Test Window, PL/SQL Developer will automatically generate a statistic report of this execution. One conditi...

weixin_30745641的博客 195

DYNAMIC PERFORMANCE TABLES NOT ACCESSIBLE错误解决

使用PL/SQL DEVELOPER 经常会碰到“DYNAMIC PERFORMANCE TABLES NOT ACCESSIBLE”错误,其实也不影响运行,但毕竟不舒服,新手可能也会无所适从,特将网上解决办法COPY如下:   PL/sql统计功能打开就OK了。 报错截图:       当前解决方案:   ...

squall140 1971

PL/SQL Developer报错Dynamic Performance Tables not accessible

PL/SQL Developer报错Dynamic Performance Tables not accessible PL/SQL Developer版本:7.1.5 1403 Dynamic Performance Tables not accessible, Automatic Statistics disabled for this session You can disa

paul50060049的专栏 413

登录pl/sql报错Dynamic Performance Tables not accessible...的解决方法和原因

报错截图: 一种解决方案: utomatic statistics 含义:   When you execute a statement in a SQL Window or in a Test Window, PL/SQL Developer will automatically generate a statistic report of

mady0505的专栏 1051

PL/SQL DeveloperDynamic Performance Tables Not Accessible的解决

产生该错误的原因:         PL/SQL Developer在用户运行过程中,要收集用户统计信息,但是由于登录的用户没有访问v$session,v$sesstat and v$statname视图的权限,所以不能收集当前用户的统计信息,和PL/SQL Developer工具中配置的Automatic Statistics相冲突,所以就出现了这个提示。         报错

青龙道人的专栏 1730

pl/sql Dynamic Performance Tables not accessible 问题解决办法

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$sess

flyuniverse_shell的专栏 849

PLSQL Developer问题——Dynamic performance Table not accessible

用PLSQL Developer,刚进入时,选择一个表,----->edit  data有个提示: Dynamic  performance  Table  not  accessible  Automatic  Statistics  disbled  this  seesion   you  can  Statistics in  the  preference  menu  ,obta...

firendsunbird的专栏 448

PL/SQL Developer 报错Dynamic Performance Tables not accessible, Automatic Statistics disabled for this...

可以从以下几个方面考虑: 1)单独给用户授动态性能视图的权限: SQL> grant select on V_sessiontouser;SQL>grantselectonV_sessiontouser_sec;SQL>grantselectonV_sesstat to user;SQL> grant select on V_$stat...

weixin_34406796的博客 368

PL/SQL Developer工具登陆一个新创建的用户进行查询时报Dynamic Performance Tables not accessible

今天用PL/SQL Developer工具登陆一个新创建的用户进行查询时报Dynamic Performance Tables not accessible 错误 Automatic statistics 含义: When you execute a statement in a SQL Window or in a Test Window, PL/SQL Developer wi

huacuilaifa的专栏 1088
上一篇: delphi版本相关
coffeeing
博客等级 码龄19年 5粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值