首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL删除挂起

MySQL删除挂起
EN

Stack Overflow用户
提问于 2022-07-10 12:12:28
回答 2查看 67关注 0票数 0

我正在运行mysql的基本删除。没有外键,除了正在运行的delete之外,没有任何东西访问表。

代码语言:javascript
复制
delete from database.table 
where filename='roger.doc' 
and aisle='whatever' 
and filetime='2022-07-09 18:37:13.645050';

MYSQL刚刚挂起,我怎么才能通过这个或强制删除?

我所犯的错误是

超过

锁定等待超时;尝试重新启动事务。

我想锁要等3分钟。但是,没有使用show engine innodb status\G的锁,最近的一次死锁发生在10天前一个完全不同的db和table上。

我添加了主键,它是filetime,另一个键是aisle,删除仍然挂起。在此之前,我必须手动删除行,然后删除问题行,这已经生效。但删除脚本只是挂起。

使用“解释”给出了以下内容。

代码语言:javascript
复制
1 | DELETE      | data_management | NULL       | range | PRIMARY,aisle_index,date_index | PRIMARY | 7       | const |    1 |   100.00 | Using where |
EN

回答 2

Stack Overflow用户

发布于 2022-07-10 17:36:07

这似乎与复制有关。其中一个节点拒绝接受来自牵头节点的事务。所以它只是停止了这个系统。

票数 0
EN

Stack Overflow用户

发布于 2022-07-10 21:22:29

系统上的其他线程在表上持有锁。这可能是由若干问题引起的。您应该运行显示完整的PROCESSLIST;来查找表上有锁的线程。一旦您识别了它(它可能是由另一个用户启动的线程--不管是直接启动的还是作为带有定义器安全配置文件的存储程序的一部分),您将需要杀死该线程。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72928382

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档