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:\LAMP\MYSQL5\data>mysqlbinlog --start-position=4 --stop-position=106 yueliangdao_binglog.000001 > c:\\test1.txt

//导入到文件
>D:\LAMP\MYSQL5\data>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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值