开启mysql二进制日志
1
2
3
4
5
6
7 1在mysql的配置文件my.ini中添加(文件中有个 #log-bin 可直接修改):
2log-bin=mysql_bin(名字自定义,英文.)
3
4my.ini的文件位置需要注意。
5比如我的:服务执行该文件 C:\ProgramData\MySQL\MySQL Server 5.7\my.ini。
6也可能我C盘E盘都装了mysql.以至于刚开始在E盘折腾许久发现不对。
7
重启mysql
1
2 1重启后,假如在mysql的存储数据(my.ini所在目录的Data文件夹)的目录中出现一下文件,则已经二进制日志已经开启
2
查看日志文件
mysql-bin.000001是mysql的二进制日志文件,不可以直接查看,可以通过导出数据查看,导出数据的语句为(终端):
1
2 1mysqlbinlog mysql-bin.000001 >binlog.txt
2
不同数据库产生不同二进制文件 mysql-bin.000002等,操作的二进制文件也不同。
打开binlog.txt,内容(格式)如下:
恢复数据
然后就可以通过命令,从某个位置执行到某个位置。恢复数据,语句为:
1
2 1mysqlbinlog --start-position=起始位置 --stop-position=结束位置 mysql-bin.000002 | mysql -uroot -p
2
需注意以下几点:
1
2
3
4
5
6
7
8 11. 起点可以不设置默认从头执行
2
32. 数据恢复可通过binlog.txt里记录的操作时间来恢复(--start-datetime="2015-08-08 10:00:00"),语法自行百度。
4
53. 如果删除二进制文件的话将mysql-bin.index里的内容(二进制文件名)一并删除,否则影响产生新的二进制日志文件
6
74. mysql服务会占用二进制文件,删除时请关闭服务。
8