返回顶部
首页 > 资讯 > 数据库 >【MySQL】数据库闪回工具之binlo
  • 182
分享到

【MySQL】数据库闪回工具之binlo

数据库工具闪回 2023-01-31 01:01:21 182人浏览 独家记忆
摘要

[root@wallet01 ~]# tar zxvf python-3.6.1.tgz [root@wallet01 ~]# cd Python-3.6.1 [root@wallet01 Python-3.6.1]# ./configur

[root@wallet01 ~]# tar zxvf python-3.6.1.tgz
[root@wallet01 ~]# cd Python-3.6.1
[root@wallet01 Python-3.6.1]# ./configure --prefix=/usr/local/python3
[root@wallet01 Python-3.6.1]# make && make install
[root@wallet01 ~]# rm -rf /usr/bin/python
[root@wallet01 ~]# rm -rf /usr/bin/pip
[root@wallet01 ~]# ln -s /usr/local/python3/bin/python3 /usr/bin/python
[root@wallet01 ~]# ln -s /usr/local/python3/bin/pip3 /usr/bin/pip

[root@wallet01 ~]# vi /etc/profile
PATH=$PATH:$HOME/bin:/usr/local/python3/bin
[root@wallet01 ~]# source /etc/profile
[root@wallet01 ~]# python -V
Python 3.6.1

[root@wallet01 ~]# pip -V
pip 9.0.1 from /usr/local/python3/lib/python3.6/site-packages (python 3.6)
[root@wallet01 ~]# pip install --upgrade pip
[root@wallet01 ~]# pip -V
pip 18.0 from /usr/local/python3/lib/python3.6/site-packages/pip (python 3.6)

[root@wallet01 ~]# git clone https://GitHub.com/danfenGCao/binlog2sql.git
Initialized empty Git repository in /root/binlog2sql/.git/
remote: Enumerating objects: 4, done.
remote: Counting objects: 100% (4/4), done.
remote: Compressing objects: 100% (4/4), done.
Receiving objects: 100% (307/307), 147.79 KiB | 68 KiB/s, done.
remote: Total 307 (delta 0), reused 1 (delta 0), pack-reused 303
Resolving deltas: 100% (158/158), done.

[root@wallet01 ~]# cd binlog2sql
[root@wallet01 binlog2sql]# pip install -r requirements.txt
[root@wallet01 binlog2sql]# cd binlog2sql/
[root@wallet01 binlog2sql]# python binlog2sql.py --help
usage: binlog2sql.py [-h HOST] [-u USER] [-p [PASSWord [PASSWORD ...]]]
                     [-P PORT] [--start-file START_FILE]
                     [--start-position START_POS] [--stop-file END_FILE]
                     [--stop-position END_POS] [--start-datetime START_TIME]
                     [--stop-datetime STOP_TIME] [--stop-never] [--help]
                     [-d [DATABASES [DATABASES ...]]]
                     [-t [TABLES [TABLES ...]]] [--only-dml]
                     [--sql-type [SQL_TYPE [SQL_TYPE ...]]] [-K] [-B]
                     [--back-interval BACK_INTERVAL]
                     
--start-file --起始解析文件
--stop-file  --终止解析文件
--start-position --起始解析位置
--stop-position  --终止解析位置
--start-datetime --起始解析时间,格式'%Y-%m-%d %H:%M:%S'。
--stop-datetime --终止解析时间,格式'%Y-%m-%d %H:%M:%S'。
-d --仅解析目标db的sql
-t --仅解析目标table的sql
--only-dml --仅解析dml,忽略ddl。
--sql-type --仅解析指定类型,支持insert,update,delete。
-B --生成回滚SQL

[root@wallet01 ~]# Mysql -uroot -pabcd.1234
mysql> grant select,replication client,replication slave on *.* to 'flashback'@'%' identified by 'flashback';
mysql> flush privileges;

mysql> show master status;
+------------------+----------+--------------+------------------+-------------------+
| File             | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000008 |      120 |              |                  |                   |
+------------------+----------+--------------+------------------+-------------------+
1 row in set (0.00 sec)

[root@wallet01 mysql]# mysql -utpcc -ptpcc
mysql> select now();
+---------------------+
| now()               |
+---------------------+
| 2019-01-04 17:01:07 |
+---------------------+
1 row in set (0.00 sec)

mysql> use tpcc
mysql> select count(*) from warehouse;
+----------+
| count(*) |
+----------+
|       10 |
+----------+
1 row in set (0.00 sec)

mysql> delete from warehouse where w_id = 1;
Query OK, 1 row affected (0.07 sec)

mysql> select count(*) from warehouse;
+----------+
| count(*) |
+----------+
|        9 |
+----------+
1 row in set (0.00 sec)

mysql> select now();
+---------------------+
| now()               |
+---------------------+
| 2019-01-04 17:14:09 |
+---------------------+
1 row in set (0.00 sec)

[root@wallet01 binlog2sql]# python binlog2sql.py -h127.0.0.1 -P3306 -uflashback -p'flashback' -dtpcc100 --start-file='mysql-bin.000008' \
> --start-datetime='2019-01-04 17:01:07' \
> --stop-datetime='2019-01-04 17:14:09'

DELETE FROM `tpcc`.`warehouse` WHERE `w_id`=1 AND `w_name`='ltjfn6aUnj' AND `w_street_1`='eWRUrBRPS9nukJ' AND 
`w_street_2`='GXyRahKIL6Mva9cl' AND `w_city`='9CGyLhLlp9fXQhmxdD' AND `w_state`='JV' AND `w_zip`='815964094' AND 
`w_tax`=0.15 AND `w_ytd`=3680226.00 LIMIT 1; #start 430 end 712 time 2019-01-04 17:04:25

[root@wallet01 binlog2sql]# python binlog2sql.py -h127.0.0.1 -P3306 -uflashback -p'flashback' -dtpcc100 --start-file='mysql-bin.000008' \
> --start-position=430 --stop-position=712 -B > rollback.sql

[root@wallet01 binlog2sql]# cat rollback.sql 
INSERT INTO `tpcc`.`warehouse`(`w_id`, `w_name`, `w_street_1`, `w_street_2`, `w_city`, `w_state`, `w_zip`, `w_tax`, `w_ytd`) 
VALUES (1, 'ltjfn6aUnj', 'eWRUrBRPS9nukJ', 'GXyRahKIL6Mva9cl', '9CGyLhLlp9fXQhmxdD', 'JV', '815964094', 0.15, 3680226.00); 
#start 430 end 712 time 2019-01-04 17:04:25

[root@wallet01 binlog2sql]# mysql -utpcc -ptpcc < rollback.sql
[root@wallet01 ~]# mysql -utpcc -ptpcc
mysql> use tpcc
Database changed

mysql> select count(*) from warehouse;
+----------+
| count(*) |
+----------+
|       10 |
+----------+
1 row in set (0.00 sec)


您可能感兴趣的文档:

--结束END--

本文标题: 【MySQL】数据库闪回工具之binlo

本文链接: https://lsjlt.com/news/184105.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 【MySQL】数据库闪回工具之binlo
    [root@wallet01 ~]# tar zxvf Python-3.6.1.tgz [root@wallet01 ~]# cd Python-3.6.1 [root@wallet01 Python-3.6.1]# ./configur...
    99+
    2023-01-31
    数据库 工具 闪回
  • MyFlash MySQL闪回工具
    安装:环境要求:1、binlog格式必须为row,且binlog_row_image=full2、仅支持5.6与5.73、只能回滚DML(增、删、改) 下载地址:https://github.com/Me...
    99+
    2024-04-02
  • mysql闪回工具binlog2sql
         在生产环境中经常会遇到误删除、改错数据的情况,binlog2sql是一个mysql闪回工具,它可以实现数据的快速回滚,从binlog中提取sql,并能生成回滚...
    99+
    2024-04-02
  • oracle闪回查询和闪回数据库
    oracle闪回查询和闪回数据库 区别:数据闪回查询,只需要启用撤销表空间自动管理回滚信息。使用闪回删除技术和闪回数据库技术,需要启动回收站,闪回恢复区。(归档模式使用) 具体设...
    99+
    2024-04-02
  • 11G 闪回数据库
    第一种场景 库是用来培训或测试环境的,测试完毕后恢复原来的样子SYS@ odb>archive log list;Databaselog mode    &nb...
    99+
    2024-04-02
  • 如何安装配置mysql闪回工具binlog2sql
    这篇文章主要讲解了如何安装配置mysql闪回工具binlog2sql,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。概述binlog2sql是一个Python开发开源的MySQL...
    99+
    2024-04-02
  • 闪回数据库的使用
    oracle闪回技术-----使用闪回日志来恢复用户的逻辑错误,这种修复只针对用户逻辑错误的恢复,而不涉及整个数据库的恢复 恢复更具有针对性而且恢复时间大大减少。 对于闪回数据库而言,闪回日志不...
    99+
    2024-04-02
  • MyFlash——美团点评的开源MySQL闪回工具
    由于运维、DBA的误操作或是业务bug,我们在操作中时不时会出现误删除数据情况。早期要想恢复数据,只能让业务人员根据线上操作日志,构造误删除的数据,或者DBA使用binlog和备份的方式恢复数据,不管那种,都非...
    99+
    2022-05-23
    MySQL SQL 开源 MySQL
  • 聊聊数据库闪回技术
      提到闪回技术,工作这么久了我也很少用到, 以至于我都快忘记闪回技术都有哪些东西了。今天得空,就来复习一下数据库中的闪回技术。  即使不看书,我印象中的闪回技术分这...
    99+
    2024-04-02
  • 数据库中闪回有哪些
    小编给大家分享一下数据库中闪回有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 闪回主要有闪回表...
    99+
    2024-04-02
  • mysql闪回工具binlog2sql安装配置教程详解
    概述 binlog2sql是一个Python开发开源的MySQL Binlog解析工具,能够将Binlog解析为原始的SQL,也支持将Binlog解析为回滚的SQL,去除主键的INSERT SQL,是DBA和运维人员...
    99+
    2022-05-20
    mysql闪回工具binlog2sql mysql闪回工具 mysql binlog2sql
  • MySQL中如何使用binlog恢复或闪回数据库数据
    不知道大家之前对类似MySQL中如何使用binlog恢复或闪回数据库数据的文章有无了解,今天我在这里给大家再简单的讲讲。感兴趣的话就一起来看看正文部分吧,相信看完MySQL中如何使用binlog恢复或闪回数...
    99+
    2024-04-02
  • mysql数据库监控工具navicat-monitor
    https://www.navicat.com.cn/download/navicat-monitor 下载 Navicat Monitor 2 Windows |  macOS |  macOS Homebrew | ...
    99+
    2018-04-01
    mysql数据库监控工具navicat-monitor
  • 【MySQL】数据库性能测试工具--HammerDB
    [root@wallet01 ~]# mysql -uroot -pabcd.1234 mysql> create database tpcc; Query OK, 1 row affected (0...
    99+
    2024-04-02
  • 【MySQL】数据库逻辑备份工具--mydumper
    [root@wallet01 ~]# yum install -y glib2-devel mysql-devel zlib-devel \ pcre-devel openssl-devel cmake ...
    99+
    2024-04-02
  • mysql数据库管理工具有哪些
    MySQL数据库管理工具有以下几种:1. MySQL Workbench:官方提供的MySQL数据库管理工具,功能强大且易于使用,可...
    99+
    2023-09-26
    mysql数据库
  • c#连接mysql数据库 工具类DbHelper
    C#连接mysql数据库, 安装Mysql.Data 写DbHelper(SqlUtils) using System;using System.Data;using MySql.Data.MySqlClient;namespace Con...
    99+
    2023-09-10
    数据库 mysql c#
  • mysql数据库迁移工具有哪些
    1. mysqldump:MySQL自带的备份工具,可以将数据库导出为SQL文件,再将SQL文件导入到目标数据库中。2. mysql...
    99+
    2023-06-03
    mysql数据库迁移 mysql数据库
  • MySQL数据库InnoDB数据恢复工具怎么用
    小编给大家分享一下MySQL数据库InnoDB数据恢复工具怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一款开源的MySQ...
    99+
    2024-04-02
  • 数据库学习之七:MySQL 客户端工具及SQL入门
    七、MySQL 客户端工具及SQL入门 1、课程大纲: mysql客户端命令介绍; mysql获取帮助的方法细讲; DDL语句之管理数据库; DDL语句之管理表与案例介绍; DML语句之管理表中的数据; SELECT 检索...
    99+
    2020-12-22
    数据库学习之七:MySQL 客户端工具及SQL入门
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作