设为首页 收藏本站
查看: 884|回复: 0

[经验分享] 转载:Oracle表被锁定的处理办法

[复制链接]

尚未签到

发表于 2016-8-5 17:23:38 | 显示全部楼层 |阅读模式
  Oracle数据库虽然支持并发性方面表现出色,但在复杂的生产环境中,还是可能出现表被锁定的情况,这时一般都是客户端反应缓慢,甚至感觉系统处于停滞状态。我们可以通过检查一些视图来判断可能的锁定情况:
  一些性能方面的告警信息通过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的命令:
  SQL> alter system kill session '1034,3545'
2  /
alter system kill session '1034,3545'
*
ERROR at line 1:
ORA-00031: session marked for kill
  SQL> select spid, osuser, s.program from v$session s,v$process p
2  where s.paddr=p.addr and s.sid=1034
3  /
  SPID         OSUSER
------------ ------------------------------
PROGRAM
------------------------------------------------
303424       oracle
oracledv@p5a2 (TNS V1-V3)
  DB1@/home/oracle>su - root
p5a1@/#kill -9 303424
p5a1@/#ps -ef|grep 303424
root 574442 376852   0 23:06:09  pts/1  0:00 grep 303424
  数据库对象锁定引起的阻塞是比较麻烦的事情,处理的时候一定要小心谨慎。
  
  转自:http://www.banping.com/2009/05/21/oracle_table_lock/

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-253447-1-1.html 上篇帖子: DB Oracle SqlServer 兼容问题(随项目持续更新3) 下篇帖子: (转)oracle xe 手工建立ZHS16GBK字符集数据库
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表