暂无图片
为什么在 V$SESSION 中无法查询到 SQL_ID?
我来答
分享
Willson_Li
2021-10-26
为什么在 V$SESSION 中无法查询到 SQL_ID?










在学习 Oracle 的过程中,想测试一下 kill 语句,思路是执行 update 语句之后没有 commit ,之后另开一个终端 kill ,想通过 V$SQL 找到 SQL_ID,但是找到之后 select * from V$SESSION WHERE SQL_ID 却查不到任何数据,这是怎么回事呢?

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

进程kill后,pmon会定期清理僵尸会话,所以v$session中查不到

暂无图片 评论
暂无图片 有用 0
暂无图片
Willson_Li
题主
2021-10-27
还没有执行 kill 呢,就是想找到这条 sql 的 sid 和 serial# ,可是 v$session 中没有记录 sql_id
文成
答主
2021-10-27
select PREV_SQL_ID from v$session; 瞅瞅这个字段
Willson_Li
题主
2021-10-27
也是没有的啊啊啊啊啊
JiekeXu
暂无图片

前提是你的这个 session 没有退出,或者 RAC 环境的话如果在另一个节点执行的需要 gv$session.

暂无图片 评论
暂无图片 有用 0
Willson_Li
题主
2021-10-27
好的,我试一下,谢谢
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏