美文网首页
oracle查询锁表语句和锁表原因

oracle查询锁表语句和锁表原因

作者: 咩咩籽 | 来源:发表于2019-08-27 12:05 被阅读0次

    查询sql

    select sess.sid, 
           sess.serial#, 
           lo.oracle_username, 
           lo.os_user_name, 
           ao.object_name, 
           lo.locked_mode 
      from v$locked_object lo, dba_objects ao, v$session sess, v$process p 
    where ao.object_id = lo.object_id 
       and lo.session_id = sess.sid;
    

    原因

    select l.session_id sid, 
           s.serial#, 
           l.locked_mode, 
           l.oracle_username, 
           s.user#, 
           l.os_user_name, 
           s.machine, 
           s.terminal, 
           a.sql_text, 
           a.action 
      from v$sqlarea a, v$session s, v$locked_object l 
    where l.session_id = s.sid 
       and s.prev_sql_addr = a.address 
    order by sid, s.serial#;
    

    ORACLE解锁的方法

    alter system kill session ’146′;  –146为锁住的进程号,即spid
    

    查看当前的数据库连接数

    select count(*) from v$process ;    --当前的数据库连接数
    

    数据库允许的最大连接数

    select value from v$parameter where name ='processes';  --数据库允许的最大连接数
    

    查看当前有哪些用户正在使用数据

    select osuser, a.username, cpu_time/executions/1000000||'s', b.sql_text, machine
    from v$session a, v$sqlarea b
    where a.sql_address =b.address
    order by cpu_time/executions desc;  --查看当前有哪些用户正在使用数据
    

    当前的session连接数

    select count(*) from v$session  --当前的session连接数
    

    当前并发连接数

    select count(*) from v$session where status='ACTIVE'; --并发连接数
    

    相关文章

      网友评论

          本文标题:oracle查询锁表语句和锁表原因

          本文链接:https://www.haomeiwen.com/subject/muzsectx.html