windows下mysql全备份及还原(亲测可用)

环境:

要备份的数据库ip为 192.168.28.1 账户 test1 ,密码 123456

本地数据库ip 为 192.168.28.2 账户 test1 ,密码 123456

全备份分为设置数据库主从同步和没设置主从同步

备份设置主从同步的数据库:(back_full.bat)

@echo  off

set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"

"C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqldump" -utest1 --password=123456 -h192.168.28.1--flush_logs --single-transaction --master_data=2 --all-databases --delete_master_logs > E:\mysqlbk\full_sql\backup__%Ymd%.sql

rem 参数介绍:

rem flush_logs: 刷新二进制日志,会新建立并启用一个二进制日志文件

rem single-transaction:InnoDB 表在备份时,通常启用选项 --single-transaction 来保证备份的一致性,实际上它的工作原理是设定本次会话的隔离级别为:REPEATABLE READ,以确保本次会话(dump)时,不会看到其他会话已经提交了的数据。

rem master_data=2: master-data参数在建立slave数据库的时候会经常用到,因为这是一个比较好用的参数,默认值为1,默认情况下,会包含change master to,这个语句包含file和position的记录始位置。master-data=2的时候,在mysqldump出来的文件包含CHANGE MASTER TO这个语句,处于被注释状态

rem all-databases :所有的数据库

rem delete_master_logs:清理掉之前的二进制日志文件

rem %date:~,4%%date:~5,2%%date:~8,2%取当天的日期

@echo  on

备份没设置主从同步的数据库:(back_full.bat)

@echo  off

set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"

"C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqldump" -utest1 --password=123456 -h192.168.28.1 --single-transaction --all-databases > E:\mysqlbk\full_sql\backup_%Ymd%.sql

rem 参数介绍:

rem single-transaction:InnoDB 表在备份时,通常启用选项 --single-transaction 来保证备份的一致性,实际上它的工作原理是设定本次会话的隔离级别为:REPEATABLE READ,以确保本次会话(dump)时,不会看到其他会话已经提交了的数据。

rem all-databases :所有的数据库

rem %date:~,4%%date:~5,2%%date:~8,2%取当天的日期

@echo  on


数据还原:(recover.bat)

@echo off

set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"

"C:\Program Files\MySQL\MySQL Server 5.6\bin\mysql" -utest1 -p123456 -h192.168.28.1 --default-character-set=utf8 -f < E:\mysqlbk\full_sql\backup_%Ymd%.sql

rem 参数介绍:

rem default-character-set=utf8:设置字符集为utf8,防止乱码

rem -fforce,遇到错误直接跳过并继续执行下面的

rem %date:~,4%%date:~5,2%%date:~8,2%取当天的日期

@echo on


转载于:https://my.oschina.net/ifraincoat/blog/483427

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值