binlog流程 mysql_Linux 上通过binlog文件 恢复mysql 数据库详细步骤

一、binlog介绍

服务器的二进制日志记录着该数据库的所有增删改的操作日志(前提是要在自己的服务器上开启binlog),还包括了这些操作的执行时间。为了显示这些二进制内容,我们可以使用mysqlbinlog命令来查看。

用途1:主从同步

用途2:恢复数据库(也是线上出现一次数据库文件丢失后,才对这个有所了解并学习的)

mysqlbinlog命令用法:shell> mysqlbinlog [options] log_file ...

1)mysqlbinlog选项示例

常见的选项有以下几个:

--start-datetime

从二进制日志中读取指定等于时间戳或者晚于本地计算机的时间。取值如:="1470733768"或者="2016-08-09  5:09:28"

示例:

[root@hcloud ~]# mysqlbinlog --start-datetime="2016-08-09 5:05:27" /var/lib/mysql/mysql-bin.000001

--stop-datetime

从二进制日志中读取指定小于时间戳或者等于本地计算机的时间取值和上述一样

--start-position

从二进制日志中读取指定position事件位置作为开始。取值:="2698"

示例:

[root@hcloud ~]# mysqlbinlog --start-position="2698" /var/lib/mysql/mysql-bin.000001

--stop-position

从二进制日志中读取指定position事件位置作为事件截至。取值:="2698"

二、环境准备以及备份恢复

1)  安装好mysql后,检查开启binlog

mysql>SHOW BINARY LOGS;

ERROR1381 (HY000): You are not using binary logging

:上面提示说明没有服务器开启binlog

修改/etc/my.cnf

在mysqld选项中添加 一行内容如下:

log-bin=mysql-bin

默认如果不给值的话,log-bin的会以mysqld-bin为索引,创建mysqld-bin.00001等

重启mysqld即可。

2)  检查下binlog

mysql>show binary logs;+------------------+-----------+

| Log_name | File_size |

+------------------+-----------+

| mysql-bin.000001 | 106 |

+------------------+-----------+

1 row in set (0.00 sec)

3)  先创建一些原始数据。

mysql>create database Test_DB;

Query OK,1 row affected (0.00sec)

mysql>use Test_DB;

Databas

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值