当前位置 : 主页 > 编程语言 > 其它开发 >

数据库锁表及解锁

来源:互联网 收集:自由互联 发布时间:2022-05-30
查看PostgreSQL锁表信息 一、查询PG_STAT_ACTIVITY的信息 SELECT * FROM pg_stat_activity where datname='bms' and wait_event_type='Lock' 二、通过pid解锁死锁信息 select pg_cancel_backend("死锁那条数据的pid值") 查看
查看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

上一篇:#Markdown 如何绘制 mermaid 复杂 graph
下一篇:没有了
网友评论