暂无图片
Oracle的$sqlarea 是不是无法查出来这些SQL是那台主机执行的?
我来答
分享
暂无图片 匿名用户
Oracle的$sqlarea 是不是无法查出来这些SQL是那台主机执行的?

Oracle的$sqlarea 是不是无法查出来这些SQL是那台主机执行的?

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
刘贵宾

无法依靠sqlarea来确定SQL是哪台主机执行的


$sqlarea表列意思如下:

SQL_TEXT //当前正在执行的游标的sql文本的前1000个字符
SQL_FULLTEXT //CLOB类型 整个sql文本,不用借助于V$SQL_TEXT视图来查看整个文本
SQL_ID //库缓存中的SQL父游标的标志
SHARABLE_MEM //子游标使用的共享内存的大小,bytes
PERSISTENT_MEM //子游标生存时间中使用的固定内存的总量,bytes
RUNTIME_MEM //在子游标执行过程中需要的固定内存大小,bytes
SORTS //子游标发生的排序数量
LOADED_VERSIONS // 显示上下文堆是否载入,1是,0否
USERS_OPENING // 执行这个sql的用户数
FETCHES // sql取数据的次数
EXECUTIONS //自从被载入共享池后,sql执行的次数
FIRST_LOAD_TIME // 父游标产生的时间戳
PARSE_CALLS //解析调用的次数
DISK_CALLS //读磁盘的次数
DIRECT_WRITES //直接写的次数
BUFFER_GETS //直接从buffer中得到数据的次数
APPLICATION_WAIT_TIME // 应用等待时间,毫秒
CONCURRENCY_WAIT_TIME //并发等待时间,毫秒
USER_IO_WAIT_TIME //用户IO等待时间
ROWS_PROCESSED SQL //解析sql返回的总行数
OPTIMIZER_MODE //优化器模式
OPTIMIZER_COST //优化器对于sql给出的成本
PARSING_USER_ID //第一个创建这个子游标的用户id
HASH_VALUES //解析产生的哈希值
CHILD_NUMBER //该子游标的数量
SERVICE //服务名
CPU_TIME //该子游标解析,执行和获取数据使用的CPU时间,毫秒
ELAPSED_TIME //sql的执行时间,毫秒
INVALIDATIONS //该子游标的无效次数
MODULE //第一次解析该语句时,通过DBMS_APPLICAITON_INFO.SET_ACTION设置的模块名
ACTION //第一次解析该语句时,通过DBMS_APPLICAITON_INFO.SET_ACTION设置的动作名
IS_OBSOLETE //标记该子游标过期与否,当子游标过大时会发生这种情况
is_bind_sensitive //不仅指出是否使用绑定变量窥测来生成执行计划,而且指出这个执行计划是否依赖于窥测到的值。如果是,这个字段会被设置为Y,否则会被设置为N。
is_bind_aware //表明游标是否使用了扩展的游标共享。如果是,这个字段会被设置为Y,如果不是,这个字段会被设置为N。如果是设置为N,这个游标将被废弃,不再可用。
is_shareable //表明游标能否被共享。如果可以,这个字段会被设置为Y,否则,会被设置为N。如果被设置为N,这个游标将被废弃,不再可用。

暂无图片 评论
暂无图片 有用 0
打赏 0
暂无图片
刘贵宾

想要知道SQL是哪台主机执行的,可以试试以下方式

1、已系统用户登录数据库,执行sql语句select * from v$sql,找到目标语句,复制sql_id;

2、执行select address from v$sql where sql_id='g84s7vp6uh2mc'; 复制address

3、执行select username,osuser,machine,program from v$session where prev_sql_addr='2C3FFE00';其中machine 就是目标机器

暂无图片 评论
暂无图片 有用 0
打赏 0
回答交流
Markdown


请输入正文
提交
相关推荐
oracle12c问题
回答 3
暂无文字回复
Oracle 数据库里面如何存生僻字?
回答 3
数据库的字符集决定着你能存储的文字范围,如何存的结果就是两种,能存和不能存能存可能是使用了数据库字符集,也可能是国家字符集不能存的话就得想其他办法了
数据库为oracle10G,在进行0级恢复时报“RMAN-06023: 没有找到数据文件1的副本来恢复“”
回答 1
很明确了,没有1的镜像副本可能原因:1,就是没有。2,未识别对应关系
Oracle 删除了表空间的一个数据文件,现在物理文件删了,但是数据库里的记录没删掉,怎么解决?
回答 4
1、数据库启动到mount,offline数据文件SQL>alterdatabasedatafile'/u01/app/oracle/oradata/orcl11g/test01.dbf'off
没有RMAN备份,ORA-01578该如何修复?
回答 3
备份当前的数据库文件:在进行任何修复操作之前,务必先备份当前的数据库文件和控制文件。这是为了确保数据的安全性,以便在修复尝试失败时可以恢复到原始状态。检查控制文件的状态:使用SQLPlus或其他Ora
有什么方式可以查询正在执行的ORACLE sql语句?
回答 2
根据SID,获取正在执行的sql,参考示例:DECLARECURSORcursql(ppresqladdrVARCHAR2)ISSELECTt.sqltextFROMv$sqltextwithnewl
oracle过段时间普通用户无法登入,重启系统 可以登入
回答 6
看ash是在登录的时候执行了查看表空间大小的sql是通过什么登录?客户端还是sqlplus,glogin.sql是不是关联了什么脚本?$ORACLEHOME/sqlplus/admin/glogin.
DG下归档日志的管理
回答 3
这个看你的DG是什么模式,如果是realtimeapply进行同步的话,备库的归档保留时间不受影响,因为日志是直接通过standbyredo就做了数据同步了,不会先经过归档解析。如果是非realtim
Oracle set unused 命令
回答 3
已采纳
这不就是为了减少从大表中删除列时可能出现的数据库高负载情况发生么。业务高峰时段切断生产中对列的访问而没有I/O延迟,将列标记为未使用,然后在以后非高峰时段进行物理删除。
有谁遇到过 impdp导入19c rac集群数据库时,监听出现一堆service 的案列,数据库是19.11
回答 3
这个问题怎么解决的,我也遇到了