修改mysql配置文件mysql.ini,在[mysqld]节点下添加 

# log-bin 
log-bin =E:/log/logbin.log 

 

路径中不要包含中文和空格。重启mysql服务。通过命令行停止和启动mysql服务 

c:\>net stop mysql; 
c:\>net startmysql; 

进入命令行进入mysql并查看二进制日志是否已经启动 

mysql>show variables like 'log_%'; 

日志成功开启后,会在E:/log/目录下创建logbin.indexlogbin.000001两个文件。logbin.000001就是数据库的备份文件,以后就可以通过此文件对数据库进行恢复操作。 

 

查看备份的二进制文件 

cmd下进入到mysqlbin目录:

c:\mysql\bin\>mysqlbinloge:/log/logbin.000001 

日后记录的操作多了,命令行方式基本就用不上了。可以使用将日志导出文件的方式来查看日志内容 

c:\mysql\bin\>mysqlbinloge:/log/logbin.000001 > e:/log/log.txt 

 

">": 导入到文件中; ">>": 追加到文件中 

查看日志可以看到做的操作sql语句。

恢复的时候只要恢复一部分数据,则可以按指定位置导出

--start-position=185 --stop-position=338185338是设定的开始和结束位置)

c:\mysql\bin\>mysqlbinlog --start-position=185 --stop-position=338e:/log/logbin.000001 > e:/log/log3.txt 

 

mysql查询分析器中也可以用SHOW BINLOG EVENTS;命令来查询

3.1 恢复: 
Sql
代码 

复制代码代码如下:


c:\mysql\bin\>mysqlbinlog e:/log/logbin.000001 | mysql -u root -p
 


3.2
按指定位置恢复: 
Sql
代码 

复制代码代码如下:


c:\mysql\bin\>mysqlbinlog --start-position=185 --stop-position=338e:/log/logbin.000001 | mysql -u root -p
 

输入密码即可完成恢复。
3.3
按指定时间恢复: 
Xml
代码 

复制代码代码如下:


c:\mysql\bin\>mysqlbinlog --start-datetime="2010-01-07 11:25:56"--stop-datetime="2010-01-07 13:23:50" e:/log/logbin.000001 | mysql -uroot -p
 


3.4
通过导出的脚本文件恢复 
Sql
代码 

复制代码代码如下:


c:\mysql\bin\>mysql -e "source e:/log/log.sql"