Informix杀掉死锁的方法和查看死锁的sql语句(转)
摘要:
Informix锁表产生的原因,要么是多个用户同时访问数据库导致该问题,要么是因为某个进程死了以后资源未释放导致的。如果是前一种情况,可以考虑将 数据库表的锁级别改为行锁,来减少撞锁的机会;或在应用程序中,用set lock mode wait 3这样的语句,在撞锁后等待若干秒重试。如果是后一种情况,可以在数据库端用onstat -g ses/onstat -g sql/onstat -k等命令找出锁表的进程,用onmode -z命令结束进程;如果不行,就需要重新启动数据库来释放资源。 1:$ onstat -k | grep HDR+X 获得sessid,其中HDR+X 为排他锁,HD 阅读全文
posted @ 2011-01-21 10:01 星星博客园 阅读(2119) 评论(0) 推荐(0) 编辑