#--no-defaults去除默认配置, -d 仅操作对应的数据库
mysqlbinlog --no-defaults -d dbname
#在控制台中列出所有二进制日志
mysqlbinlog --no-defaults D:/Program/mysql/data/binlog/mysql_bin.000004
#将二进制文件中记录的SQL语句重定向到log.sql文件中
mysqlbinlog --no-defaults D:/Program/mysql/data/binlog/mysql_bin.000004 > log.sql
#导出特定位置的信息, at后面的数字就是位置,所以可以先重定向到文件,然后查找出位置
mysqlbinlog --start-position=185 --stop-position=338 e:/log/logbin.000001 > e:/log/log3.txt
#导出特定时间的信息,日志文件中记录的年份是两位,如141122 10:22:00 表示2014-11-22 10:22:00
mysqlbinlog --start-datetime="2010-01-07 11:25:56" --stop-datetime="2010-01-07 13:23:50" e:/log/logbin.000001 > e:/log/log_by_date22.txt
恢复数据:
#通过管道导入数据库
mysqlbinlog e:/log/logbin.000001 | mysql -u root -p
mysqlbinlog --start-position=185 --stop-position=338 e:/log/logbin.000001 | mysql -u root -p
mysqlbinlog --start-datetime="2010-01-07 11:25:56" --stop-datetime="2010-01-07 13:23:50" e:/log/logbin.000001 | mysql -u root -p
#导出文件可以通过mysql客户端导入,或者进入客户端后通过source命令导入
查看,更新,删除日志:
#查看当前有多少个日志文件
mysql> show master logs;
#查看当前使用的binlog文件
mysql> show binlog events \G;
#产生一个新的日志文件, 刷新当前的日志文件,后面的日志将写入新的日志文件中
mysql> flush logs;
#删除所有的日志
mysql> reset master;
#删除中续日志
mysql> reset slave;
#设定日志过期时间
mysql> show variables like 'expire_logs_days';
mysql> set global expire_logs_days=3;
#删除指定日期之前的日志
mysql> purge master logs before '2014-11-20 17:00:00';
#删除指定文件之前的日志
mysql> purge master logs to 'mysql_bin.000004'
mysqlbinlog --no-defaults -d dbname
#在控制台中列出所有二进制日志
mysqlbinlog --no-defaults D:/Program/mysql/data/binlog/mysql_bin.000004
#将二进制文件中记录的SQL语句重定向到log.sql文件中
mysqlbinlog --no-defaults D:/Program/mysql/data/binlog/mysql_bin.000004 > log.sql
#导出特定位置的信息, at后面的数字就是位置,所以可以先重定向到文件,然后查找出位置
mysqlbinlog --start-position=185 --stop-position=338 e:/log/logbin.000001 > e:/log/log3.txt
#导出特定时间的信息,日志文件中记录的年份是两位,如141122 10:22:00 表示2014-11-22 10:22:00
mysqlbinlog --start-datetime="2010-01-07 11:25:56" --stop-datetime="2010-01-07 13:23:50" e:/log/logbin.000001 > e:/log/log_by_date22.txt
恢复数据:
#通过管道导入数据库
mysqlbinlog e:/log/logbin.000001 | mysql -u root -p
mysqlbinlog --start-position=185 --stop-position=338 e:/log/logbin.000001 | mysql -u root -p
mysqlbinlog --start-datetime="2010-01-07 11:25:56" --stop-datetime="2010-01-07 13:23:50" e:/log/logbin.000001 | mysql -u root -p
#导出文件可以通过mysql客户端导入,或者进入客户端后通过source命令导入
查看,更新,删除日志:
#查看当前有多少个日志文件
mysql> show master logs;
#查看当前使用的binlog文件
mysql> show binlog events \G;
#产生一个新的日志文件, 刷新当前的日志文件,后面的日志将写入新的日志文件中
mysql> flush logs;
#删除所有的日志
mysql> reset master;
#删除中续日志
mysql> reset slave;
#设定日志过期时间
mysql> show variables like 'expire_logs_days';
mysql> set global expire_logs_days=3;
#删除指定日期之前的日志
mysql> purge master logs before '2014-11-20 17:00:00';
#删除指定文件之前的日志
mysql> purge master logs to 'mysql_bin.000004'