数据库锁表及解锁

查看PostgreSQL锁表信息

一、查询PG_STAT_ACTIVITY的信息
SELECT * FROM pg_stat_activity where datname='bms' and wait_event_type='Lock'
二、通过pid解锁死锁信息
select pg_cancel_backend("死锁那条数据的pid值")


查看mysql锁表信息

一:检查是否锁表, 查询进程并杀死进程#

1) 查询是否锁表#

show open tables where in_use > 0;

2) 查询进程(如果您有SUPER权限,您可以看到所有线程。否则,您只能看到您自己的线程)#

show processlist;
show full processlist;

3) 杀死进程(id列)#

kill id

二:查看在锁事务,杀死事务对应的线程ID#

1) 查看正在锁的事务#

select * from information_schema.INNODB_LOCKS;

2) 杀死进程id(trx_mysql_thread_id列)#

kill ID

3) 查看等待锁的事务#

SELECT * FROM INFORMATION_SCHEMA.INNODB_LOCK_WAITS;

其它:#

  1. 查看服务器状态
    show status like '%lock%';
  2. 查看超时时间:
    show variables like '%timeout%';

显示哪些线程正在运行#

SHOW PROCESSLIST;
mysql -uroot -e 'Show processlist'
mysqladmin processlist

posted @   yisk  阅读(1053)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示
主题色彩