mysql 5.6.10分析表锁问题

zaq34kh6  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(271)

我在生产mysql数据库上运行analyze table命令,却不知道它会阻止我选择表的内容。这导致生产现场停工:(锁需要多长时间才能释放?另外,从备份中重新创建db是否可以解决问题/消除锁?
请告诉我。
谢谢。

brccelvz

brccelvz1#

分析表等待获取元数据锁。在等待过程中,任何针对表的sql查询都会等待analyze table。
分析表通常非常快,即1-3秒。但是,在获取元数据锁之前,这种快速操作不会启动。
当您有针对表的长时间运行的事务时,它无法获取元数据锁。因此,如果您想让它运行得更快,请完成您的事务。
有关更多信息,请参阅我对mysql未能更改正在被主动写入的表的回答。

x7rlezfr

x7rlezfr2#

analyze table非常清楚地说“在分析过程中,表被innodb和myisam的读锁锁定”。
你可以 KILL {connection number} 在sql中停止命令。
注意:您可能应该更新到mysql-5.6的最新版本。

相关问题