一、开启二进制日志
1、进入配置文件[mysqld]下添加配置

方案一

vim /etc/my.cnf

log-bin = /usr/local/mysql/logs/mysql_bin
max_binlog_size = 100M
方案二

vim /etc/my.cnf.d/server.cnf

log_bin='二进制日志名称'
2、重启服务

systemctl restart mysqld
3、进入mysql查看二进制日志开启状态

show variables like 'log_bin';

二、命令使用:
# 查看二进制日志启动状态
show variables like 'log_bin';
# 查看二进制日志正在使用的日志
show master status;
# 查看所有二进制日志
show master logs;
# 直观查看二进制文件内容
show binlog events in 'mysql_bin.000001';
# 查看二进制文件内容 # at 678 为position值 # 200912 3:44:14 为时间值
mysqlbinlog --stop-position=795 /xxx/mysql_bin.000001 >/xxx/mysql_bin_001.sql
cat /xxx/mysql_bin_001.sql
# 根据position进行恢复
mysqlbinlog --start-position=1 --stop-position=795 /xxx/mysql_bin.000001 | mysql -uroot -p
# 根据时间点位置进行恢复;-d指定数据库,选项-h指定主机
mysqlbinlog --start-date="2020-09-29 18:00:00" --stop-date="2020-09-29 23:00:00" -d 库名 -h 地址 /xxx/mysql_bin.000001 |mysql -uroot -p
# 将二进制日志文件中所有的数据记录全部恢复
mysqlbinlog /xxx/mysql_bin.000001 |mysql -uroot -p
# 重新建立新的二进制文件日志
flush logs;
#清空所有二进制文件日志
reset master;

2、用mysqlbinlog工具查看
基于开始/结束时间
mysqlbinlog --start-datetime='2020-08-02 00:00:00' --stop-datetime='2020-08-03 23:01:01' -d hadoop /var/lib/mysql/mysql-bin.000001

基于pos值,注:hadoop是库名,/var/lib/mysql/mysql-bin.000001是二进制文件路径
mysqlbinlog --start-position=2098 --stop-position=2205 -d hadoop /var/lib/mysql/mysql-bin.000001

转换binlog日志的为sql文件:
mysqlbinlog --no-defaults -v -v --base64-output=decode-rows /data/log/bin_log/bin.000001 > /root/bin.sql

MySQL二进制备份恢复的更多相关文章

  1. Xtrabackup原理及使用innobackupex进行MySQL数据库备份恢复

    Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具. Xtrabackup中主要包含两个工 ...

  2. MySQL用户管理、常用sql语句、MySQL数据库备份恢复

    1.MySQL用户管理 给远程登陆用户授权:grant all on *.* to 'user1'@'127.0.0.1' identified by '123456' (这里的127.0.0.1是指 ...

  3. Linux centosVMware mysql用户管理、常用sql语句、mysql数据库备份恢复

    一.mysql用户管理 grant all on *.* to 'user1'@‘127.0.0.1’ identified by 'mimA123'; 创建user1用户 使用user1登录 /us ...

  4. postgresql 和 mysql 数据库备份恢复以及时区问题

    概要 postgesql 12 备份/恢复脚本 时区设置 mysql 5.6 备份/恢复脚本 时区设置 概要 postgresql 和 mysql 是最常用的 2 种开源关系数据库, 很多项目也会优先 ...

  5. mysql xtrabackup 备份恢复实现,mysql命令备份数据库,打包压缩数据库

    简介 Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb数据库进行热备的工具.特点: (1)备份过程快速.可靠 ...

  6. mysql数据库备份/恢复

    备份数据库(进入Mysql bin目录下/C:\Program Files\MySQL\MySQL Server 5.6\bin)本地安装mysql数据库 备份表结构及数据 mysqldump -hl ...

  7. 【转】mysql增量备份恢复实战企业案例

    来源地址:http://seanlook.com/2014/12/05/mysql_incremental_backup_example/ 小量的数据库可以每天进行完整备份,因为这也用不了多少时间,但 ...

  8. 最常用MySql数据库备份恢复

    1.数据备份类型: ·完全备份:故名思议备份整个数据库 ·部分备份:备份一部分数据集 : ·增量备份:自上次备份以来的改变数据的备份: ·差异备份:自上次完全备份后改变数据的备份: 2.数据备份的方式 ...

  9. MySQL之备份恢复

    1.备份的种类 逻辑备份:SQL语句的备份 物理备份:数据页备份 2.逻辑备份工具介绍 select xxxx from t1 into outfile '/tmp/redis.txt' mysql ...

随机推荐

  1. Java算法——递归思想

    描述递归(recursion):程序调用自身的编程技巧. 递归满足2个条件:1)有反复执行的过程(调用自身)2)有跳出反复执行过程的条件(递归出口) 递归与栈的关系下面演示的是求n的阶乘 int Fa ...

  2. asyncio异步模块的21个协程编写实例

    启动一个无返回值协程 通过async关键字定义一个协程 import sys import asyncio async def coroutine(): print('运行协程') if sys.ve ...

  3. 【Azure DevOps系列】Azure DevOps生成代码覆盖率

    前言 在做单元测试时,代码覆盖率可以作为我们衡量代码质量的一个指标,本章我们将使用Azure DevOps帮助我们生成代码覆盖率的结果.Azure DevOps构建管道还是具有代码覆盖率选项的,在Vi ...

  4. angular实现地区三级联动

    <!DOCTYPE html><html ng-app="myapp"> <head> <meta charset="UTF-8 ...

  5. 用Python发一封图文并茂的邮件

    最近使用了不少通讯工具的接口, 比如企业微信机器人,钉钉,微信公众号的接口(未认证的订阅公众号),相对于邮件来说,它们的表现形式太弱.比如没有更丰富的版本方式.当然了,并不是说表现形式越棒就是约好的通 ...

  6. asterisk 传真服务器配置

    摘要: asterisk 可以作为电子传真服务器,进行收发电子传真.但是配置起来,比较麻烦,需要一番折腾.在这儿分享一下电子传真的配置,希望对朋友们有所帮助. 正题: asterisk 如果需要收发电 ...

  7. Vue.$set的使用场景

    有这样一个需求,用户可以增加多个输入框可以编辑:     实现的思路很简单,点击增加的时候,往一个数组里面push一条数据即可: <template> <div> <di ...

  8. Hadoop Windows IDEA

    java jdk1.8都可以了 注意jdk的路径要拷贝到一个没有空格的路径改掉JAVA_HOME系统环境变量 在etc/hadoop/hadoop_env.cmd里有设置%JAVA_HOME%了不用管 ...

  9. C# 转化成 json ,特殊字符的处理

    //1.定义string jsonText0= "{\"beijing\":{\"zkkke\":\"2222\",\" ...

  10. 渣渣的Leetcode之旅(Python3)_1.两数之和

    题目:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标.你可以假设每种输入只会对应一个答案.但是,数组中同一个元素不能使用两遍 ...