记录日常工作关于系统运维,虚拟化云计算,数据库,网络安全等各方面问题。
 
0

mysqldump备份避免锁表

发表者:admin分类:数据库2023-01-17 16:37:00 阅读[474]
mysqldump备份避免锁表



生产环境中,场景难免会遇到对正在运行的数据库进行备份,而mysqldump备份会有锁表风险,导致数据在备份期间无法写入数据,
所以对正在运行的数据库备份需要慎重。下面就聊聊如何解决锁表?


mysqldump命令备份Mysql数据库的参数说明


-q       采用快速的dump方式(提高导出性能)
-e       采用多重insert语句形式(提高还原性能)
-R       导出存储过程,函数,和触发器


--events        如果是5.1以上的版本使用,包含事件
--skip-opt      避免锁表
--create-option            添加create相关的选项
--single-transaction       一致性备份
--no-autocommit      采用批量提交方式(提高还原性能)
--master-data   如果有写log-bin且版本为5.0以上的版本,则再加上 --master-data=2


改良mysqldump备份命令




我的版本是MySQL-5.7.11,启用了binlog,所以应使用如下命令备份数据库


mysqldump -uroot -p --events --single-transaction --master-data=2 --skip-opt --databases db1 db2 >/root/mysql.sql


其他


mysqldump命令适用于对数据库相对较小的MySQL进行备份,一般数据量约50GB以内,大于50GB强烈建议使用xtrabackup工具。
参考:MySql xtrabackup大数据量备份与还原


转载请标明出处【mysqldump备份避免锁表】。

《www.micoder.cc》 虚拟化云计算,系统运维,安全技术服务.

网站已经关闭评论