MySQL binlog 的恢复操作
CREATE TABLE `t1` (
`id` int(60) NOT NULL AUTO_INCREMENT,
`name` varchar(20) NOT NULL DEFAULT '',
`age` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8
1 insert into t1 values(1,'xiaoxiao',20),(2,'huahua',21),(3,'lili',22); ###mysqb-bin.0000001
2 flush logs
3 insert into t1 values(4,'xiaohong',18); # mysql-bin.000002
insert into t1 values(5,'aying',22);
4 flush logs
5 delete from t1 where id<4; #mysql-bin.000003
show master logs;
+------------------+-----------+
| Log_name | File_size |
+------------------+-----------+
| mysql-bin.000001 | 499 |
| mysql-bin.000002 | 774 |
| mysql-bin.000003 | 194 |
+------------------+-----------+
/usr/local/mysql/bin/mysqlbinlog --start-position=219 mysql-bin.000001 >/tmp/ok.txt ###查看以下是日志信息
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#170922 10:14:10 server id 2003309 end_log_pos 123 CRC32 0x509b4a7a Start: binlog v 4, server v 5.7.19-log created 170922 10:14:10 at startup
ROLLBACK/*!*/;
BINLOG '
8nHEWQ9tkR4AdwAAAHsAAAAAAAQANS43LjE5LWxvZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAADyccRZEzgNAAgAEgAEBAQEEgAAXwAEGggAAAAICAgCAAAACgoKKioAEjQA
AXpKm1A=
'/*!*/;
# at 219
#170922 10:19:50 server id 2003309 end_log_pos 290 CRC32 0x5073a29d Query thread_id=183 exec_time=0 error_code=0
SET TIMESTAMP=1506046790/*!*/;
SET @@session.pseudo_thread_id=183/*!*/;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=1436549152/*!*/;
SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C utf8 *//*!*/;
SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=33/*!*/;
SET @@session.lc_time_names=0/*!*/;
SET @@session.collation_database=DEFAULT/*!*/;
BEGIN
/*!*/;
# at 290
#170922 10:19:50 server id 2003309 end_log_pos 338 CRC32 0xca27d49b Table_map: `zst`.`t1` mapped to number 223
# at 338
#170922 10:19:50 server id 2003309 end_log_pos 421 CRC32 0xacc98577 Write_rows: table id 223 flags: STMT_END_F BINLOG '
RnPEWRNtkR4AMAAAAFIBAAAAAN8AAAAAAAEAA3pzdAACdDEAAwMPAwI8AASb1CfK
RnPEWR5tkR4AUwAAAKUBAAAAAN8AAAAAAAEAAgAD//gBAAAACHhpYW94aWFvFAAAAPgCAAAABmh1
YWh1YRUAAAD4AwAAAARsaWxpFgAAAHeFyaw=
'/*!*/;
# at 421
#170922 10:19:50 server id 2003309 end_log_pos 452 CRC32 0x57228b9c Xid = 3692
COMMIT/*!*/;
# at 452
#170922 10:20:02 server id 2003309 end_log_pos 499 CRC32 0xe31d7a38 Rotate to mysql-bin.000002 pos: 4
SET @@SESSION.GTID_NEXT= 'AUTOMATIC' /* added by mysqlbinlog */ /*!*/;
DELIMITER ;
# End of log file
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
/usr/local/mysql/bin/mysqlbinlog -v mysql-bin.000001 >/tmp/faile.txt #### 查看以下的日志信息
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=1*/;
/*!50003 SET @OLD_COMPLETION_TYPE=@@COMPLETION_TYPE,COMPLETION_TYPE=0*/;
DELIMITER /*!*/;
# at 4
#170922 10:14:10 server id 2003309 end_log_pos 123 CRC32 0x509b4a7a Start: binlog v 4, server v 5.7.19-log created 170922 10:14:10 at startup
ROLLBACK/*!*/;
BINLOG '
8nHEWQ9tkR4AdwAAAHsAAAAAAAQANS43LjE5LWxvZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAADyccRZEzgNAAgAEgAEBAQEEgAAXwAEGggAAAAICAgCAAAACgoKKioAEjQA
AXpKm1A=
'/*!*/;
# at 123
#170922 10:14:10 server id 2003309 end_log_pos 154 CRC32 0x2a8835fb Previous-GTIDs
# [empty]
# at 154
#170922 10:19:50 server id 2003309 end_log_pos 219 CRC32 0xbf230db3 GTID last_committed=0 sequence_number=1 rbr_only=yes
/*!50718 SET TRANSACTION ISOLATION LEVEL READ COMMITTED*//*!*/;
SET @@SESSION.GTID_NEXT= '6fb6a0c6-9dd2-11e7-a4e8-0050569c404d:1'/*!*/; #### 这个操作,直接导致恢复整个日志文件会出错。
# at 219
#170922 10:19:50 server id 2003309 end_log_pos 290 CRC32 0x5073a29d Query thread_id=183 exec_time=0 error_code=0
SET TIMESTAMP=1506046790/*!*/;
SET @@session.pseudo_thread_id=183/*!*/;
SET @@session.foreign_key_checks=1, @@session.sql_auto_is_null=0, @@session.unique_checks=1, @@session.autocommit=1/*!*/;
SET @@session.sql_mode=1436549152/*!*/;
SET @@session.auto_increment_increment=1, @@session.auto_increment_offset=1/*!*/;
/*!\C utf8 *//*!*/;
SET @@session.character_set_client=33,@@session.collation_connection=33,@@session.collation_server=33/*!*/;
SET @@session.lc_time_names=0/*!*/;
SET @@session.collation_database=DEFAULT/*!*/;
BEGIN
/*!*/;
# at 290
#170922 10:19:50 server id 2003309 end_log_pos 338 CRC32 0xca27d49b Table_map: `zst`.`t1` mapped to number 223
# at 338
#170922 10:19:50 server id 2003309 end_log_pos 421 CRC32 0xacc98577 Write_rows: table id 223 flags: STMT_END_F BINLOG '
RnPEWRNtkR4AMAAAAFIBAAAAAN8AAAAAAAEAA3pzdAACdDEAAwMPAwI8AASb1CfK
RnPEWR5tkR4AUwAAAKUBAAAAAN8AAAAAAAEAAgAD//gBAAAACHhpYW94aWFvFAAAAPgCAAAABmh1
YWh1YRUAAAD4AwAAAARsaWxpFgAAAHeFyaw=
'/*!*/;
### INSERT INTO `zst`.`t1`
### SET
### @1=1
### @2='xiaoxiao'
### @3=20
### INSERT INTO `zst`.`t1`
### SET
### @1=2
### @2='huahua'
### @3=21
### INSERT INTO `zst`.`t1`
### SET
### @1=3
### @2='lili'
### @3=22
# at 421
#170922 10:19:50 server id 2003309 end_log_pos 452 CRC32 0x57228b9c Xid = 3692
COMMIT/*!*/;
# at 452
#170922 10:20:02 server id 2003309 end_log_pos 499 CRC32 0xe31d7a38 Rotate to mysql-bin.000002 pos: 4
SET @@SESSION.GTID_NEXT= 'AUTOMATIC' /* added by mysqlbinlog */ /*!*/;
DELIMITER ;
# End of log file
/*!50003 SET COMPLETION_TYPE=@OLD_COMPLETION_TYPE*/;
/*!50530 SET @@SESSION.PSEUDO_SLAVE_MODE=0*/;
MySQL binlog 的恢复操作的更多相关文章
- 一次基于innobackupex备份及binlog的单表恢复操作
[环境介绍] 系统环境:Red Hat Enterprise Linux Server release 7.0 (Maipo) + Server version: 5.7.18-log MySQL C ...
- Mysql之binlog日志说明及利用binlog日志恢复数据操作记录
众所周知,binlog日志对于mysql数据库来说是十分重要的.在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全备份+binlog日志恢复增量数据部分),化险为夷! 一 ...
- Mysql利用binlog日志恢复数据操作(转)
a.开启binlog日志:1)编辑打开mysql配置文件/etc/mys.cnf[root@vm-002 ~]# vim /etc/my.cnf在[mysqld] 区块添加 log-bin=mysql ...
- 【转】Mysql之binlog日志说明及利用binlog日志恢复数据操作记录
众所周知,binlog日志对于mysql数据库来说是十分重要的.在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全备份+binlog日志恢复增量数据部分),化险为夷! 废 ...
- 解说mysql之binlog日志以及利用binlog日志恢复数据
众所周知,binlog日志对于mysql数据库来说是十分重要的.在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全备份+binlog日志恢复增量数据部分),化险为夷! 废 ...
- mysql undo 和redo 被误删除的恢复操作(一致性)
今天在群里看到有人说不熟悉innodb把ibdata(数据文件)和ib_logfile(事务日志)文件误删除了.不知道怎么解决.当时我也不知道怎么办.后来查阅相关资料.终找到解决方法.其实恢复也挺简单 ...
- MySQL binlog日志操作详解
MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日志是事务安全型的. bi ...
- MySQL的binlog日志恢复(转)
binlog 基本认识 MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日 ...
- Linux 上通过binlog文件 恢复mysql 数据库详细步骤
一.binlog 介绍 服务器的二进制日志记录着该数据库的所有增删改的操作日志(前提是要在自己的服务器上开启binlog),还包括了这些操作的执行时间.为了显示这些二进制内容,我们可以使用mysqlb ...
随机推荐
- EasuUI-js(EasyUI formatter格式化教程)常用判断收集
YN标记: formatter : function(c1, row,index) { var a = ""; if(c1 == "Y"){ a = a + & ...
- 跨server传输数据注意事项
我们需要模拟客服端 首先导入相关的jar包 文件,Jersey的相关jar包 实现客服端的代码为: @Test public void testClient() { //图片生成 ...
- Apache Kafka系列(五) Kafka Connect及FileConnector示例
Apache Kafka系列(一) 起步 Apache Kafka系列(二) 命令行工具(CLI) Apache Kafka系列(三) Java API使用 Apache Kafka系列(四) 多线程 ...
- c# 后台get post请求
//get请求 public static TResult Get<TResult>(string host, string url) { var httpClient = new Htt ...
- JS函数-我调用自己试试看
前言 最近在读<JavaScript语言精粹>,对递归函数有了进一步的认识,希望总结下来: 递归是一种强大的编程技术,他把一个问题分解为一组相似的子问题,每一问题都用一个寻常解去解决.递归 ...
- c++中string.erase()函数的用法(转)
erase函数的原型如下:(1)string& erase ( size_t pos = 0, size_t n = npos );(2)iterator erase ( iterator p ...
- 基于dijkstra算法求地铁站最短路径以及打印出所有的路径
拓展dijkstra算法,实现利用vector存储多条路径: #include <iostream> #include <vector> #include <stack& ...
- 如何快速的理解JavaScript闭包?
先看问题 1. 在js中的作用域是什么? 作用域就是作用范围,作用空间.作用域分为全局作用域和局部作用域.(这个东西大家都明白) 如果把局部作用域比作一个国家,那么全局作用域就是地球,地球上除了那个国 ...
- webservice中jaxws:server 和jaxws:endpoint的区别
今天在学习使用spring+cxf发布webservice时遇到个问题,我原来是用 <jaxws:endpoint id="helloWorld" implementor=& ...
- outlook 无法搜索邮件的解决方法
我的outlook版本是2007 SP3,英文版.一直有搜索不到邮件的问题,例如在搜索框输入发件人的名字,或者邮件中的词语,就是搜索不到邮件,即使那封邮件确实存在. 在网上搜索,Microsoft 的 ...