温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

简记MySQL的逻辑备份(mydumper+mysqldump)

发布时间:2020-08-16 08:39:11 来源:ITPUB博客 阅读:190 作者:wangwenan6 栏目:MySQL数据库
虽说MySQL的逻辑备份经常会由于锁表等缺陷遭到诟病, 实际上在停机窗口时间内, 如果数据量不是太高的话, 做逻辑备份还是挺简单的~

准备工作:
1. 目标库(从这个库备份数据)先要有足够权限的账号(临时的root就可以了~用完就删);
2. 对应的工具要安装好, 如mydumper;
3. 准备好脚本/命令, 不放心就在测试环境演练一下~

一切准备就绪之后就可以等停机了~

这里记下备份&恢复用的命令:

备份:

点击(此处)折叠或打开

  1. nohup mysqldump -h<host> -u<user> -p<password> --triggers --routines --events --set-gtid-purged=OFF -B <dbname> -d > /home/backup/<dbname>.sql &
  2. nohup mydumper -h <host> -P 3306 -u <user> -p <password> -t 4 -m -B <dbname> -o /home/backup/mydumper_<dbname> &
几个需要注意的点:
1. mydumper无法导出视图, 触发器, 存储过程等对象, 所以用mysqldump来导出各种对象的结构;
2. mydumper能做多线程导出, 所以导具体的数据时, mydumper会比mysqldump多很多;
3. --set-gtid-purged=OFF 主要适用于开启了GTID的数据库, 如果没有开启, 那么就把这个选项去掉;
4. 如果是在从库上进行备份, 那么记得加上--dump-slave参数, 把slave status的信息dump出来;

恢复:

点击(此处)折叠或打开

  1. nohup mysql -u<user> -p<password> -h<host> -e "source /home/backup/<dbname>.sql" &
  2. nohup myloader -u <user> -p <password> -h <host> -e -B <dbname> -d /home/backup/mydumper_<dbname>/ &
几个需要注意的点:
1. myloader的命令之间要注意空格;
2. myloader的-e参数会把恢复数据时的SQL写进binlog, 可以用来进行同步or故障排查or其他;

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI