解决oracle数据库死锁

解决oracle数据库死锁

ID:30446775

大小:84.58 KB

页数:14页

时间:2018-12-30

解决oracle数据库死锁_第1页
解决oracle数据库死锁_第2页
解决oracle数据库死锁_第3页
解决oracle数据库死锁_第4页
解决oracle数据库死锁_第5页
资源描述:

《解决oracle数据库死锁》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、解决Oracle数据库死锁解决Oracle数据库死锁2011年01月12日星期三08:35P.M.解决Oracle数据库死锁介绍本文我们尝试总结在多个用户并发情况下,如何识别和解决删除操作期间发生的死锁问题,在开始之前,我们先简单描述一下什么是死锁以及什么东西会导致死锁。死锁在任何数据库中发生死锁都是不愉快的,即使是在一个特殊的情况下发生也是如此,它们会减小应用程序的接受程度(ACCEPTANCE),因此避免并正确解释死锁是非常重要的。当两个或更多用户相互等待锁定的数据时就会发生死锁,发生死锁时,这些用户被卡住不能继续处理业务,Oracle自动检

2、测死锁并解决它们(通过回滚一个包含在死锁中的语句实现),释放掉该语句锁住的数据,回滚的会话将会遇到Oracle错误"ORA-00060:等待资源时检测到死锁"。是什么导致了死锁?明确地锁定表是为了保证读/写一致性,未建立索引的外键约束,在相同顺序下表不会锁住,没有为数据段分配足够的存储参数(主要是指INITTRANS,MAXTRANS和PCTFREE参数)很容易引发突发锁和死锁,原因是多种多样的,需要重新逐步审查。识别死锁当Oracle数据库检测到死锁时(Oracle错误消息:ORA-00060),相应的消息就写入到警告日志文件中(alert.l

3、og),另外还会在USER_DUMP_DEST目录下创建一个跟踪文件,分析警告日志文件和跟踪文件是非常耗时的。下面是一个警告日志文件示例:MonAug0709:14:422007ORA-000060:Deadlockdetected.Moreinfoinfilee:oracleadminGEDEONudumpORA01784.TRC.下面是从跟踪文件中节选出来的片段,从其中我们可以看出是哪个语句创造了死锁,相关的语句和被锁定的资源已经标记为粗体。/users/ora00/log/odn_ora_1097872.trcOracle9iEn

4、terpriseEditionRelease9.2.0.8.0-64bitProductionWiththePartitioning,OLAPandOracleDataMiningoptionsJServerRelease9.2.0.8.0-ProductionORACLE_HOME=/soft/ora920Systemname:AIXNodename:beaid8Release:2Version:5Machine:00C95B0E4C00Instancename:ODNRedothreadmountedbythisinstance:1Oracl

5、eprocessnumber:17Unixprocesspid:1097872,image:oracle@beaid8(TNSV1-V3)*2007-06-0414:41:04.080*SESSIONID:(10.6351)2007-06-0414:41:04.079DEADLOCKDETECTED(ORA-00060)ThefollowingdeadlockisnotanORACLEerror.Itisadeadlockduetousererrorinthedesignofanapplicationorfromissuingincorrecta

6、d-hocSQL.Thefollowinginformationmayaidindeterminingthedeadlock:Deadlockgraph:---Blocker(s)-----Waiter(s)---ResourceNameprocesssessionholdswaitsprocesssessionholdswaitsTM-00001720-000000001710SX1618SXSSXTM-0000173a-000000001618SX1710SXSSXsession10:DID0001-0011-00000002session1

7、8:DID0001-0010-00000022session18:DID0001-0010-00000022session10:DID0001-0011-00000002Rowswaitedon:Session18:obj-rowid=00001727-AAABcnAAJAAAAAAAAA(dictionaryobjn-5927,file-9,block-0,slot-0)Session10:obj-rowid=00001727-AAABcnAAJAAAAAAAAA(dictionaryobjn-5927,file-9,block-0,slot-

8、0)InformationontheOTHERwaitingsessions:Session18:pid=16serial=2370au

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。