binlog日志相关及恢复数据
/* * BINLOG就是一个记录SQL语句的过程,和普通的LOG一样。不过只是她是二进制存储,普通的是十进制存储。 * 开启binlog * 打开配置文件: * [mysqld] * log-bin=mysql-bin(名字可以改成自己的,如果不改名字的话,默认是以主机名字命名) * 重新启动MSYQL服务。 * */ //查看mysql binlog日志 >show variables like "%bin%"; //查看其binlon日志位置 >show master status; //查看binlog文件列表 >show binary logs; //查看binlog日志的events >show binlog events; 【第一种方式】 //用mysqlbinlog 工具来显示记录的二进制结果,然后导入到文本文件,为了以后的恢复。 //详细过程如下: >D:LAMPMYSQL5data>mysqlbinlog --start-position=4 --stop-position=106 yueliangdao_binglog.000001 > c:\test1.txt //导入到文件 >D:LAMPMYSQL5data>mysqlbinlog --start-position=134 --stop-position=330 yueliangdao_binglog.000001 >test1.txt //进入MYSQL导入 >./mysqlbinlog --start-date="2009-04-10 17:30:05" --stop-date="2009-04-10 17:41:28" /usr/local/mysql/data/mysql-bin.000002 |mysql -u root -p123456 或者 mysql> source c:\test1.txt 【第二种方式】将一个mysqlbinlog文件导为sql文件 //将mysql-bin.000001日志文件导成001.sql >./mysqlbinlog /usr/local/mysql/data/mysql-bin.000001 > /opt/001.sql //可以在mysqlbinlog语句中通过--start-date和--stop-date选项指定DATETIME格式的起止时间 >./mysqlbinlog --stop-date="2009-04-10 17:41:28" /usr/local/mysql/data/mysql-bin.000002 > /opt/004.sql //将mysql-bin.000002文件中截止到2009-04-10 17:41:28的日志导成004.sql >./mysqlbinlog --start-date="2009-04-10 17:30:05" --stop-date="2009-04-10 17:41:28" /usr/local/mysql/data/mysql-bin.000002 /usr/local/mysql/data/mysql-bin.0000023> /opt/004.sql //注:如果有多个binlog文件,中间用空格隔开,打上完全路径 //将mysql-bin.000002日志文件中从2009-04-10 17:30:05到2008-04-10 17:41:28截止的sql语句导入到mysql中 >./mysqlbinlog --start-date="2009-04-10 17:30:05" --stop-date="2009-04-10 17:41:28" /usr/local/mysql/data/mysql-bin.000002 | mysql -u root -p123456 或者 mysql>source /opt/004.sql
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。