锁表的基础知识就不浪费口水描述了。讲讲在开发的时候,有时候不管是通过cmd操作数据库、还是通过数据库工具操作数据库,有时候不正当的操作会将表锁了:从开发的角度来看,表现为当在程序中通过代码对数据库进行更新、删除、添加操作时候,代码执行无效,有时候还会等待与异常抛出。
接下来就说说在ORCLA与MYSQL中,如何查看锁表与解锁表:
###############################
ORACLE:
- 查看锁表进程SQL:
select * from v$session t1, v$locked_object t2 where t1.sid = t2.SESSION_ID;
- 杀掉进程解锁 (在查锁sql执行后有记录说明有锁表,记录结果的SID,在下面的SQL中进行执行,可解除LOCK)
alter system kill session 'SID';
##############################
MYSQL:
- 查看是否有锁表SQL:(注意大小写)
show OPEN TABLES where In_use > 0
- 杀掉锁表进程解锁表:
show processlist; (查看锁表的进程-得到PROCESSID)
kill pid;
DONE.