MySQL的BinLog数据备份恢复记录(window版)
一:打开mysql 的binlog备份策略
查看mysql是否开启binlog,命令如下,可用cmd也可以用数据库管理软件,比如我用的是SQLyog
SHOW VARIABLES LIKE 'log_%'
打开mysql的binlog备份策略
在C:\ProgramData\MySQL\MySQL Server 5.6下有一个my.ini文件,记事本打开然后在[mysqld]下面添加这段代码,然后保存,重启mysql服务。
#Binary Logging
log-bin=D:/mysqlBinLog/mysql-bin
binlog-format=Row
log-bin指存放位置,如果填写log-bin=mysql-bin 则为保存到C:\ProgramData\MySQL\MySQL Server 5.6\data中,命名为mysql-bin,像我这样填写的就是保存到D盘的mysqlBinLog文件夹中,命名前缀为mysql-bin。
binlog-format指备份规则,有三钟
我们使用的是行复制(Row)
二、测试
创建数据库,创建表格,新增数据
然后打开刚才my.ini中写的位置,比如我写的D:/mysqlBinLog/mysql-bin,打开我的D盘下的mysqlBinLog文件夹,发现生成了两个文件
这一步可省略,只是为了看一下这个文件而已,打开命令行,我这是进入到了我的文件夹mysqlBinLog中,不是的就在mysql-bin.000001前输入位置,输入命令:
mysqlbinlog mysql-bin.000001 > d:/3.txt
然后D盘中会生成一个3.txt,进入就可以看到我们对数据库的操作日志了。
PS:如果提示不是命令行则是没有配置环境
右键桌面的计算机,然后点击属性--高级系统设置,点击高级,点击环境变量,然后按下图点击PATH,点击编辑
将你mysql文件夹中的bin位置复制到加到此处,记得添加之前如果没有 ; 要加上一个符号,然后保存即可。
打开cmd然后连接mysql数据库,或者打开SQLyog或者其他数据库管理软件,输入:
show binlog events in 'mysql-bin.000001';
三、恢复数据
删除数据库
输入命令
mysqlbinlog mysql-bin.000001 mysql -uroot -p123456
看数据库和数据已经恢复了~
欢迎在下面讨论与询问