mysqldump 不锁表
2022-05-12 16:14:03
今天备份数据库的时候客户突然说现场数据推不出来了,百度了一下才知道mysqldump命令备份的时候会锁表,就找了一下不会锁表的命令,发现只用加一个参数就好了。
--single-transaction选项避免了innodb databases备份期间的任何锁,如果你使用这个选项,在备份期间,不会锁表。
该选项在导出数据之前提交一个BEGIN SQL语句,BEGIN 不会阻塞任何应用程序且能保证导出时数据库的一致性状态。它只适用于多版本存储引擎(它不显示加锁通过判断版本来对比数据),仅InnoDB。本选项和--lock-tables 选项是互斥的,因为LOCK TABLES 会使任何挂起的事务隐含提交。要想导出大表的话,应结合使用--quick 选项。
mysqldump db --single-transaction --quick > 20220512db.sql
本文来自博客园,作者:元月二一,转载请注明原文链接:https://www.cnblogs.com/ljq225/p/16262943.html