并发操作数据库发生异常时该怎么处理?
有一个公共的数据库,有很多用户可以对数据库进行操作。
如果其中的一个用户有一次对一个数据表做了更新数据记录的操作,但是,该用户做完了更新操作以后并没有提交该操作,然后该用户就非正常的退出了(例如:掉线,死机重启)。
这时其它用户就不能对该数据表进行任何的更新操作了,如果进行更新操作,则长时间没有任何响应,
那是因为上次的操作没有提交,造成了数据表的死锁,导致别的用户不能更新数据库。
碰到这种情况怎么办呢?大家应该有碰到这种情况的吧?
我这时只能使用很原始的方法:重启数据库服务器,好麻烦啊。
大家有什么好的方法没有?
【实例演示】:
sql> update user set userno = '13002333' where name = 'add';
1 rows updated successfully;
该用户并没有用commit提交这次的操作,
这时该用户的机子突然重启,然后别的用户就不能对user表进行任何更新操作了。