MySQL转储等待表元数据锁定

时间:2016-07-08 12:47:11

标签: mysql

我正在尝试按照以下方式执行mysqldump:

mysqldump -u root -p db > C:\FileLocation

但是,当我运行命令时,它永远不会完成。因此我使用了:SHOW PROCESSLIST;看看发生了什么。在我的转储查询状态中,状态显示为:'等待表元数据锁定'。数据库上只运行了两个其他进程(SHOW PROCESSLIST命令除外),两个进程都处于休眠状态。

我尝试杀死其他两个进程然后执行对我有用的转储。但是,无论这两个进程是否正常工作,我都希望转储能够正常工作。有没有办法解决这个问题?

1 个答案:

答案 0 :(得分:1)

管理到最后弄清楚......

我所要做的就是在原始查询的开头添加:--single-transaction=TRUE。 IE:

mysqldump --single-transaction=TRUE -u root -p db > C:\FileLocation

这使得进程无需锁定表即可运行。