`
阅读更多


 一些性能方面的告警信息通过dba_outstanding_alerts表都能查到,被锁定的表如果长期得不到释放,在这里也能查到相关session的sid和serial#。

  select * from dba_outstanding_alerts

  v$locked_object视图可以看到当前被锁定的对象,只有那些一直存在的session才有可能是被锁定的,因此不能简单匆忙的下结论,尤其是在RAC环境中,必须查看各个节点以发现相关的session在哪里。

  select * from v$locked_object

  有时候也可以根据对象名来查看锁的信息:

  select sid,id1,type from v$lock where id1=(select object_id from dba_objects where object_name=upper('mytablename'));

  找到了引起锁定的session,就可以找到对应的sid和serial#

  select saddr,sid,serial#,paddr,username,status from v$session where sid=772

  从而可以杀死这个session:

  SQL> alter system kill session '772,9044';

  System altered.

  可以查询Oracle数据库的进程和操作系统进程之间的关联:

  select spid, oSUSEr, s.program from v$session s,v$process p

  where s.paddr=p.addr and s.sid=772

  有时候一些进程要在操作系统杀死,这时可以用kill -9 pid的命令:

  [root@erpdevdb ~]# ps -ef|grep sqlplus

  oracle 11847 11126 0 16:39 pts/1 00:00:00 sqlplus -S @/oracle/home/droptable.sql

  root 11889 11856 0 16:40 pts/2 00:00:00 grep sqlplus

  [root@erpdevdb ~]# kill -9 11847

  数据库对象锁定引起的阻塞是比较麻烦的事情,处理的时候一定要小心谨慎。
  • 大小: 47.2 KB
分享到:
评论

相关推荐

    解决Oracle 11g中scott用户默认被锁定的问题

    解决Oracle 11g中scott用户默认被锁定的问题

    解决Oracle system或用户被锁定问题

    这篇文章是笔者在使用SQL/pl所遇到的一些问题,现在找到了解决办法,分享给大家。 希望你们遇到的时候可以用的到。...文章中还有一次性解决忘记密码问题被锁定的终极办法(狗头),快来试试吧。 嘻嘻。

    oracle表被锁定的完美解决方法

    ora-00031:session marked for kill处理oracle中杀不掉的锁一些ORACLE中的进程被杀掉后,状态被置为”killed”,但是锁定的资源很长时间不释放,有时实在没办法,只好重启数据库。现在提供一种方法解决这种问题,那...

    Oracle数据库账号被锁定解决方法

    在Oracle数据库操纵中,登录Oracle账号时提示失败,并且Oracle账号频繁被锁定。造成此故障的原因是什么呢?本文就介绍了这一过程,经由过程慢慢排查我们就能找到该故障的原因了。 下面记录下查找这个题目的步调。 1....

    解决 PL/SQL Developer提示:无法锁定oci dll

    1.下载资源oracle-instantclient-windows.x64-19.3.0.0.0dbru 解压自己存储盘符 例如:d:\instantclient_19_3 2.设置PLSQL Developer 连接菜单下 Oracle 主目录名:d:\instantclient_19_3 OCI库:d:\instantclient_...

    字段被SDE用户锁定的解决办法.txt

    Oracle字段被SDE用户锁定的解决办法

    SQL Server和Oracle数据锁定比较

    数据库并行访问,也就是两个或两以上用户同时访问同一数据,这也是数据库引擎如何设计和...当然,并行访问是任何数据库解决方案都最为重视的问题了,为了解决并行访问方面的问题各类数据库系统提出了各种各样的方案。

    ORACLE进程无法KILL处理方案.docx

    在 ORACLE 数据库中,当我们尝试 kill 一个进程时,可能会出现状态被置为 "KILLED" 但是锁定的资源长时间不释放的情况,这会导致错误提示 ORA-00030: User session ID does not exist 或 ORA-00031: session marked ...

    ORACLE错误码大全

    "ORACLE错误码大全" 本资源提供了 ORACLE 错误码大全,涵盖了 ORACLE 错误码的详细信息。...通过了解错误码的含义和解决方法,开发者和管理员可以更好地管理 ORACLE 数据库,提高系统的稳定性和安全性。

    记录被另一个用户锁定.txt

    Oracle记录被另一个用户锁定的解决办法

    ORACLE initialization or shutdown in process

    解决方法: 进入dos: 以DBA用户登录,具体命令是 sqlplus /NOLOG SQL>connect sys/change_on_install as sysdba 提示:已成功 SQL>shutdown normal 提示:数据库已经关闭 已经卸载数据库 ORACLE 例程已经关闭 ...

    Oracle数据库"记录被另一个用户锁住"解决方法(推荐)

    数据库是一个多用户使用的共享资源。当多个用户并发地存取数据时,在数据库中就会产生多个事务同时存取同一数据的情况。这篇文章主要介绍了Oracle数据库"记录被另一个用户锁住"解决方法

    oracle数据库中忘记用户名密码了怎么办

    如果用户账户被锁定,需要解锁账户。输入以下命令: `alter user 用户名 account unlock;` 这将解锁用户账户。 步骤 4:修改密码 输入以下命令,修改用户密码: `alter user 用户名 identified by 密码;` 这将...

    Oracle用户被锁的原因及解决办法

    在登陆时被告知test用户被...2、查看具体的被锁时间 SQL> select username,lock_date from dba_users where username='TEST'; USERNAME LOCK_DATE TEST 2009-03-10 08:51:03 3、解锁 SQL> alter user test account u

    oracle11g用户登录时被锁定问题的解决方法 (ora-28000 the account is locked)

    最近在操作oracle11g的使用出现错误的现象:ora-28000 the account is locked,既用户无法登录问题,如何解决此问题呢?下面小编给大家带来了oracle11g用户登录时被锁定问题的解决方法,感兴趣的朋友一起看看吧

    Oracle用户密码过期和用户被锁的解决方法

    主要介绍了Oracle用户密码过期和用户被锁的解决方法,需要的朋友可以参考下

    oracle常见的锁查询和处理

    --数据库中的表锁,查找某个表被哪个session锁定 --DML语句产生的锁 --谁锁住了表,引起了谁的等待 --事务,锁,回滚段 --LOCKED_OBJECTS --出错的分布式事务锁 --分布式事务 --Hold进程 --会话式事务锁 --...

Global site tag (gtag.js) - Google Analytics