<转> plsql dev中Dynamic Performance Tables not accessible分析解决
相信很多使用plsql dev的朋友多遇到过类此如下面的提示:
Dynamic Performance Tables not accessible, Automatic Statistics Disabled for this session You can disable statistics in the preference menu,or obtanin selectpriviliges on the v$session,v$sesstat and v$statname tables |
一、产生该提示原因
plsql dev在用户运行过程中,要收集用户统计信息,但是由于你现在登录的用户没有访问v$session,v$sesstat and v$statname视图的权限,所以不能收集当前用户的统计信息,和plsql dev工具中配置的Automatic Statistics相冲突,所以就出现了这个提示,试验验证:
[oracle@xifenfei ~]$ sqlplus / as sysdbaSQL*Plus: Release 11.2.0.3.0 Production on Thu Nov 10 04:31:57 2011Copyright (c) 1982, 2011, Oracle. All rights reserved.Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing optionssys@XFF>create user chf identified by xifenfei;User created.sys@XFF>grant create session,resource to chf;Grant succeeded.sys@XFF>conn chf/xifenfeiConnected.chf@XFF>select * from session_privs;PRIVILEGE----------------------------------------CREATE SESSIONUNLIMITED TABLESPACECREATE TABLECREATE CLUSTERCREATE SEQUENCECREATE PROCEDURECREATE TRIGGERCREATE TYPECREATE OPERATORCREATE INDEXTYPE10 rows selected.chf@XFF>SELECT TABLE_NAME FROM USER_TAB_PRIVS;no rows selected |
创建一个chf用户,授权create session,resource,无v$session,v$sesstat and v$statname视图访问权限,使用plsql dev登录并查询user_tables表(登录时不会提示,只有用户执行了查询或者相关类此操作时候才会提示)
二、解决问题
根据警告提示,可以有两种方法解决这种警告
1、关闭plsql dev统计功能
在 Tools->Preferences->Options里 把Automatic Statistics前的那个勾子去掉,保存
2、给访问用户授权访问相关视图
授权访问v_$session,v_$sesstat,v_$statname,注意不能直接对v$视图进行授权
chf@XFF>conn / as sysdbaConnected.sys@XFF>grant select on v_$session to chf;Grant succeeded.sys@XFF>grant select on v_$sesstat to chf;Grant succeeded.sys@XFF>grant select on v_$statname to chf;Grant succeeded.sys@XFF>conn chf/xifenfeiConnected.chf@XFF>SELECT TABLE_NAME FROM USER_TAB_PRIVS;TABLE_NAME------------------------------V_$SESSIONV_$SESSTATV_$STATNAME |
三、问题分析
通过上面的解决方法,为什么授权访问v$session,v$sesstat and v$statname视图就可以Statistics用户的信息了呢?请见下面的两张图
图1:通过plsql dev中的tools–>session选项看用户统计信息
图2:通过sql语句查询用户统计信息
通过两张图的比较可能会发现,他们的数值有一点点出入,那是因为我先通过tools查询出用户统计信息,再通过sql查询,所以图1中的数据有些选项会比图2小那么一点点,通过对v$session,v$sesstat and v$statname视图分析,发现其实plsql dev就是通过下面sql实现统计功能,也从而进一步说明了,为什么plsql dev收集统计信息需要对v$session,v$sesstat and v$statname视图授于访问权限
SELECT C.NAME, B.STATISTIC#, B.VALUE FROM V$SESSION A, V$SESSTAT B, V$STATNAME C WHERE A.SID = B.SID AND A.AUDSID = USERENV('SESSIONID') AND B.STATISTIC# = C.STATISTIC# ORDER BY C.STATISTIC#; |
<转> plsql dev中Dynamic Performance Tables not accessible分析解决的更多相关文章
- plsql dev中Dynamic Performance Tables not accessible分析解决(转)
使用plsql dev的朋友多遇到过类此如下面的提示: Dynamic Performance Tables not accessible, Automatic Statistics Disabled ...
- 错误提示: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
1.错误提示:Dynamic Performance Tables not accessible, Automatic Statistics Disabled for this session You ...
- Dynamic Performance Tables not accessible Automatic Statistics disabled for this session
使用oracle时候统计会出现这个提示 Dynamic Performance Tables not accessible Automatic Statistics disabled for this ...
- plsql 中出现 Dynamic Performance Tables not accessible 问题解决
产生该提示原因: plsql dev在用户运行过程中,要收集用户统计信息,但是由于你现在登录的用户没有访问v$session,v$sesstat and v$statname视图的权限, 所以不能收集 ...
- PL/SQL连接查询数据报错时Dynamic Performance Tables not accessible
一.产生该提示原因plsql dev在用户运行过程中,要收集用户统计信息,但是由于你现在登录的用户没有访问v$session,v$sesstat and v$statname视图的权限,所以不能收集当 ...
- PL/SQL Developer 报错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$ses
可以从以下几个方面考虑: 1)单独给用户授动态性能视图的权限: SQL> grant select on V_session to user; SQL> grant select on ...
- plsql dev引起的数据库被黑勒索比特币实现原理分析和解决方案
转自http://www.xifenfei.com/2016/11/plsql-dev-hacker-bitcoin.html afterconnect.sql是plsql dev登录后自动执行脚本, ...
- 客户机中PLSQL DEV访问虚拟机中的ORCLE11g,错误百出!
客户机中PLSQL DEV访问虚拟机中的ORCLE11g,错误百出! 创建时间: 2017/10/14 18:44 作者: CNSIMO 标签: ORACLE 忙了一下午,只有两个字形容:麻烦! ...
- C#中dynamic的正确用法
C#中dynamic的正确用法 http://www.cnblogs.com/qiuweiguo/archive/2011/08/03/2125982.html dynamic是FrameWork4 ...
随机推荐
- IDEA将web项目打成war包
非Maven项目打包方式 按ctrl+滚动鼠标滚轮就能放大浏览器看图片了.或者将图片拖到新窗口打开. 然后点击OK,然后build一下.然后去classes文件夹下面找就能找到打成war包的项目 ...
- MySQL 5.7以上 root用户默认密码问题【转】
https://www.yanning.wang/archives/379.html 废话少说一句话系列: CentOS系统用yum安装MySQL的朋友,请使用 grep "temporar ...
- vue2中使用mint-ui,性别选择
安装需要的组件 import { DatetimePicker,Toast,Popup,Picker } from 'mint-ui'; templete部分 <div class=" ...
- 【js字符串当做数组来使用】浪费一晚【想出了3个解决方案】
数据库的所有数据都打成字符串发到前端. 不必把它的类型也强制转成int这类的,页面负责字符串的展示 这样做可以修改页面的数据 response.setHeader("Content-type ...
- paramiko实现上传目录
使用paramiko上传目录,重点是上传的那个过程,想了一上午才想出来,可能有点奇葩,但是还是实现了这个功能 #!/usr/bin/python import paramiko import os d ...
- Numpy、SciPy、MatPlotLib在Python2.7.9下的安装与配置
前言: Python安装完Numpy,SciPy和MatplotLib后,可以成为非常犀利的科研利器.网上关于这三个库的安装都写得非常不错,但是大部分人遇到的问题并不是如何安装,而是安装好后因为配置不 ...
- OpenSSL-Win32,rsa,私钥,公钥,1024,2048
默认是rsa_private_key1024.pem , PEM格式私钥,C# ,PHP 用. 再生成 pkcs8 格式私钥, JAVA 用. 公钥无格式区分. 1024 的: openssl.exe ...
- VS2017 对com组件调用返回错误hresult e_fail
解决步骤如下: 第一步: 第二步:进入VS2017 安装目录,如下(路径仅供参考) 执行:gacutil -i Microsoft.VisualStudio.Shell.Interop.11.0.dl ...
- centos7 源码安装redis
安装3.x [root@node1 ~]# yum install wget gcc-c++ make [root@node1 ~]# wget http://download.redis.io/re ...
- ros有一个比较安全的登录方案:二次登录防火墙
原文: https://www.winbox.org/ /ip firewall address-list add address=10.0.0.0/8 list=login /ip firewall ...