为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

Oracle下面的死锁处理

2017-11-26 2页 doc 12KB 11阅读

用户头像

is_447713

暂无简介

举报
Oracle下面的死锁处理Oracle下面的死锁处理 今天在操作数据库的时候某个表的数据的时候,更新数据就会卡在那边。不论是用sqldeveloper或则是sqlplus,但是操作其它表的操作确很快。 那个表格产生锁的原因找到了,在2011年10月19号晚上网络上看到一篇文章讲外键没有设置索引所引发表的死锁问题。 看一下那个死锁的表,确实那个表格上面有5个外键,有可能是这个引发的原因。但是如果特意去操作那些有外键的表,但是又不会产生死锁,可能取决于资源的操作量。 解决表死锁的方法 方法一:最简单的方法是数据库重启,在linux终端,oracl...
Oracle下面的死锁处理
Oracle下面的死锁处理 今天在操作数据库的时候某个的数据的时候,更新数据就会卡在那边。不论是用sqldeveloper或则是sqlplus,但是操作其它表的操作确很快。 那个表格产生锁的原因找到了,在2011年10月19号晚上网络上看到一篇文章讲外键没有设置索引所引发表的死锁问题。 看一下那个死锁的表,确实那个表格上面有5个外键,有可能是这个引发的原因。但是如果特意去操作那些有外键的表,但是又不会产生死锁,可能取决于资源的操作量。 解决表死锁的方法 方法一:最简单的方法是数据库重启,在linux终端,oracle用户登录。 export ORACLE_SID=所要重启的数据库的SID sqlplus / as sysdba shutdown immediate startup; 表的死锁就解决了。但是很多时候数据库是不能够重启的。 方法二:查询死锁对象的linux进程编号,删除相关的进程 SQL>; col OS_USER_NAME format a10; SQL>; col process format a10; SQL>; select * from v$locked_object; XIDUSN XIDSLOT XIDSQN OBJECT_ID SESSION_ID ORACLE_USE OS_USER_NA PROCESS LOCKED_MODE ---------- 0 0 0 88523 130 SYS oracle 7643 3 SQL>; quit #kill 7643 现在虽然不用重启,但是还是会经常死锁。 方法三:给字表的外键加索引 想要彻底解决上面表外键引发的死锁的解决方法是,给子标的外键加索引,就可以。 :在碰到锁问题的时候除了查数据库锁对象之外最好也要会先分析一下,自己的表的设 计结构。如果会去查看trace.log是最好的。马上知道问题。
/
本文档为【Oracle下面的死锁处理】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索