【ORACLE】查看正在运行的的SQL【全】

这篇具有很好参考价值的文章主要介绍了【ORACLE】查看正在运行的的SQL【全】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

Oracle语句记录


1、查看 Oracle 正在执行的 sql 语句

SELECT b.sid oracleID,  
       b.username 用户名,  
       b.serial#,  
       paddr,  
       sql_text 正在执行的SQL,  
       b.machine 计算机名称
FROM v$process a, v$session b, v$sqlarea c  
WHERE a.addr = b.paddr  
   AND b.sql_hash_value = c.hash_value 

oracle查询正在执行的sql,# Oracle,DB,oracle,sql,数据库

1.1、杀死进程

ALTER system KILL SESSION '{ORACLEID},{SERIAL#}';

1.2、若利用步骤2命令kill一个进程后,进程状态被置为"killed",但是锁定的资源很长时间没有被释放,那么可以在os级别再kill相应的进程(线程)。

  • 1)首先通过执行下面SQL获得PID:
SELECT spid, osuser, s.program
FROM v$session s, v$process p
WHERE s.paddr=p.addr AND s.sid={ORACLEID};
  • 2)在OS上kill这个进程:
-- pid: 获取到的spid
$ kill -9 {pid}

2、查询当前用户正在执行的SQL

select a.sid,
       a.serial#,
       a.paddr,
       a.machine,
       nvl(a.sql_id, a.prev_sql_id) sql_id,
       b.sql_text,
       b.sql_fulltext,
       b.executions,
       b.first_load_time,
       b.last_load_time,
       b.last_active_time,
       b.disk_reads,
       b.direct_writes,
       b.buffer_gets
  from v$session a, v$sql b
 where a.username = sys_context('USERENV', 'CURRENT_USER')
   and a.status = 'ACTIVE' 
   and nvl(a.sql_id, a.prev_sql_id) = b.sql_id;

3、查询当前被锁的表

SELECT l.session_id sid,  
       s.serial#,  
       l.locked_mode 锁模式,  
       l.oracle_username 登录用户,  
       l.os_user_name 机器用户名,  
       s.machine 机器名,  
       s.terminal 终端用户名,  
       o.object_name 被锁对象名,  
       s.logon_time 登录数据库时间  
FROM v$locked_object l, all_objects o, v$session s  
WHERE l.object_id = o.object_id  
   AND l.session_id = s.sid  
ORDER BY sid, s.serial#; 

3.1、解除锁命令

alter system kill session 'sid,serial#'

总结

如果此篇文章有帮助到您, 希望打大佬们能关注点赞收藏评论支持一波,非常感谢大家!
如果有不对的地方请指正!!!

参考1
参考2文章来源地址https://www.toymoban.com/news/detail-768899.html

到了这里,关于【ORACLE】查看正在运行的的SQL【全】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • oracle查看锁表的sql

    关键表 V$LOCKED_OBJECT :记录锁信息的表 v$session :记录会话信息的表 v$sql :记录执行sql的表 dba_objects :用来管理对象(表、库等等对象) 查看锁表的SID sql1 sql2 USERNAME:死锁语句所用的数据库用户; SID: session_id LOCKWAIT:死锁的状态,如果有内容表示被死锁。 STATUS:状态,ac

    2024年02月16日
    浏览(31)
  • oracle sql语言模糊查询

    在Where子句中,可以对datetime、char、varchar字段类型的列用Like子句配合通配符选取那些“很像...”的数据记录,以下是可使用的通配符: %   零或者多个字符 _   单一任何字符(下划线) /   特殊字符 []   在某一范围内的字符,如[0-9]或者[aeth] [^]   不在某范围内的字符,如

    2024年02月10日
    浏览(28)
  • docker oracle linux命令执行sql

    docker安装oracle 查看日志是否安装成功 docker container ls -a命令查看容器名 sys 用户登录容器 sys 用户登录容器创建表空间以及用户 建表 (复制sql,替换表名执行完毕后,再修改自己想要的字段即可) 什么是pdb数据库?什么是CDB? 参照https://blog.csdn.net/weixin_39876739/article/details/1

    2024年02月12日
    浏览(26)
  • Oracle系列之八:SQL查询

    Oracle提供了一个强大的SQL引擎,使得用户可以通过SQL语言来管理和操作数据库。 以CAP(顾客-代理-产品)数据库为例,表结构如下: CUSTOMERS (顾客信息表) cid 顾客ID cname 顾客姓名 city 顾客所在城市 discnt 顾客可能会有的折扣 AGENTS 代理商信息表 aid 代理商ID aname 代理商名称

    2023年04月20日
    浏览(33)
  • oracle查询日期为当天的数据sql

    可以使用 Oracle 的函数 SYSDATE 来获取当前日期。例如,要查询表 mytable 中日期为当天的数据,可以使用以下 SQL 语句: 请注意,如果 date_column 类型为 DATE ,则上述语句可能会产生错误,因为 SYSDATE 返回的是日期和时间。在这种情况下,可以使用以下语句来解决这个问题: TR

    2024年02月13日
    浏览(29)
  • (Oracle)SQL优化技巧(一):分页查询

    目录 分页查询框架 分页查询注意事项  有序/无序分页 事务带来的影响 分页查询与索引 排序字段索引实验 组合索引实验 利用ROWNUM进行分页查询的方法在各版本都是适用的,11g,12c,19c都可以使用该方法哦。在分享分页查询方法之前,需要先聊下ROWNUM,这玩意儿要是聊不清楚,

    2024年04月11日
    浏览(37)
  • java serverlets使用数据源连接oracle数据库,并执行查询操作代码

    package chap03; import java.io.IOException; import java.io.PrintWriter; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.PreparedStatement; import java.sql.Statement; import java.util.*; import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.Namin

    2024年02月08日
    浏览(40)
  • Oracle SQL Developer 中查看表的数据和字段属性、录入数据

    在Oracle SQL Developer中,选中一个表时,右侧会列出表的情况;第一个tab是字段的名称、数据类型等属性; 切换到第二个tab,显示表的数据;   这和sql server management studio不一样的; 看一下部门表dept的数据如下;   输入语句新建一个表; 切换到新建表的数据tab, 通过点上方图

    2024年02月07日
    浏览(32)
  • sql递归查询处理树状结构数据,适用于sqlserver和oracle

    在工作中用到根据某个组织的ID,查询当前所有的上级,并按层级返回 递归语法: 以with开头,再以2个查询用 union all连接,且2个查询列表字段和类型返回必须一致 向上查询数据,oo是最终返回的表,也可以写为with oo as .... 但是不能写为 with oo(FID,fname_l2 ,FPARENTID)  去掉某一

    2024年01月23日
    浏览(45)
  • 解决Oracle SQL语句性能问题——SQL语句改写(视图、标量子查询及update)

    我们在前述文章中也已经提到,对于高版本的关系库,尤其是针对Oracle这样的关系库,绝大多数场景下,同一语义和结果的SQL语句的具体语法,不会成为SQL语句执行计划的影响因素,但在少数场景下,针对同一语义和结果的SQL语句的不同写法,数据库优化器最终会分别为其生

    2024年02月10日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包