linux下开启mysql的binlog日志功能

1.配置mysql配置文件my.cnf(内容如下)。

#配置文件储存的位置
log-bin=mysql-bin
#5.7以及以上版本需要配置这一行(保证唯一性,可随意输入)
server-id=123
#binlog的格式 :statement(保存语句)、row(保存执行后的结果)、mixed(同时保存语句和结果)
binlog-format=ROW
#表示每执行一次就同步
sync-binlog=1

2.重启mysql服务后。查看日志功能是否正常开启

mysql> show variables like 'log_%';

恢复数据

创建新的日志控制开始点(创建新的日志文件) mysql

mysql> flush logs;

查看创建的日志文件(如下图最新生成的mysql-bin.00003) mysql

创建数据库 mysql

DROP DATABASE IF EXISTS `study1`; CREATE DATABASE `study1`;

创建数据表 mysql

DROP TABLE IF EXISTS `study1`.`tb_class`;
CREATE TABLE `study1`.`tb_class` (
`id` int(11) NOT NULL,
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
`score` int(255) NULL DEFAULT NULL,
`grade` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;

插入数据 mysql

INSERT INTO `study1`.`tb_class` VALUES (1, 'a', 10, 'a');
INSERT INTO `study1`.`tb_class` VALUES (2, 'a', 10, 'a');
INSERT INTO `study1`.`tb_class` VALUES (3, 'a', 10, 'cc');
INSERT INTO `study1`.`tb_class` VALUES (4, 'a', 10, 'dd');
INSERT INTO `study1`.`tb_class` VALUES (5, 'a', 10, 'ee');
INSERT INTO `study1`.`tb_class` VALUES (6, 'a', 10, 'ff');

删除表数据,插入新数据 mysql

DELETE from `study1`.`tb_class`;
INSERT INTO `study1`.`tb_class` VALUES (99999, 'a', 10, 'a');
INSERT INTO `study1`.`tb_class` VALUES (999995, 'a', 10, 'b');
INSERT INTO `study1`.`tb_class` VALUES (999996, 'a', 10, 'c');
查找恢复点,即删除数据之前的备份点(mysql-bin.000014为上面生成的日志文件) linux

/usr/bin/mysqlbinlog --no-defaults -v /var/lib/mysql/mysql-bin.000003  (可以使用find命令查找mysqlbinlog、mysql-bin.000003路径)

恢复数据(恢复点如上截图,此处找到删除前备份点为2766) linux

/usr/bin/mysqlbinlog --no-defaults -v /var/lib/mysql/mysql-bin.000003  --stop-position=2766 -v | mysql -uroot -p密码

可以看到已经恢复的数据

 删除表 mysql

DROP TABLE IF EXISTS `study1`.`tb_class`;

恢复 linux

/usr/bin/mysqlbinlog --no-defaults -v /var/lib/mysql/mysql-bin.000003 --stop-position=2766 -v | mysql -uroot -p密码

删库 mysql

DROP DATABASE `study1`;

恢复 linux

/usr/bin/mysqlbinlog --no-defaults -v /var/lib/mysql/mysql-bin.000003 --stop-position=2766 -v | mysql -uroot -p密码

mysql 开启binlog日志,恢复误删的表、数据、mysql库的更多相关文章

  1. 使用Binlog日志恢复误删的MySQL数据

    解到: MySQL的binlog日志是什么?通常是用来干什么的? 模拟一次误删数据的操作,并且使用binlog日志恢复误删的数据. 写这篇文章的初衷,是有一次我真的险些把测试数据库的一张表给删除了,当 ...

  2. Mysql利用binlog日志恢复数据操作(转)

    a.开启binlog日志:1)编辑打开mysql配置文件/etc/mys.cnf[root@vm-002 ~]# vim /etc/my.cnf在[mysqld] 区块添加 log-bin=mysql ...

  3. MySQL通过binlog日志恢复数据

    一.查看下自己的MySQL是否开启了binlog日志 # 是否启用binlog日志 OFF:关闭 ON:开启 show variables like 'log_bin'; 二.开启binlog日志 在 ...

  4. mysql开启binlog日志和慢查询日志

    1)首先,为什么要开启binlog日志和慢查询日志呢? binlog日志会记录下数据库的所以增删改操作,当不小心删除.清空数据,或数据库系统出错,这时候就可以使用binlog日志来还原数据库,简单来说 ...

  5. MySQL的binlog日志恢复(转)

    binlog 基本认识 MySQL的二进制日志可以说是MySQL最重要的日志了,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录,还包含语句所执行的消耗的时间,MySQL的二进制日 ...

  6. MySQL开启binlog并且保存7天有效数据

    开启binlog日志(在[mysqld]下修改或添加如下配置): server-id=1 log-bin=mysql-bin binlog_format=MIXED binlog日志模式 Mysql复 ...

  7. 解说mysql之binlog日志以及利用binlog日志恢复数据

    众所周知,binlog日志对于mysql数据库来说是十分重要的.在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全备份+binlog日志恢复增量数据部分),化险为夷! 废 ...

  8. Mysql之binlog日志说明及利用binlog日志恢复数据操作记录

    众所周知,binlog日志对于mysql数据库来说是十分重要的.在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全备份+binlog日志恢复增量数据部分),化险为夷! 一 ...

  9. 【转】Mysql之binlog日志说明及利用binlog日志恢复数据操作记录

    众所周知,binlog日志对于mysql数据库来说是十分重要的.在数据丢失的紧急情况下,我们往往会想到用binlog日志功能进行数据恢复(定时全备份+binlog日志恢复增量数据部分),化险为夷! 废 ...

随机推荐

  1. 数据库number(4,3)表示什么

    1 你看 number(4,3)是表示 这个数 一共有4位是有效位,后面的3 表示有3个是小数也就是这个数 只能是1.234,这样格式的 最大只能是9.999,2 number(3,4) 表示这个数 ...

  2. 《头号玩家》AI电影调研报告(三)

    [AR市场正在迅猛增长] 据<工业增强现实现状2017>报告中所述,AR不再只是值得期待的新兴技术.2018年,投资此类技术已成为很多组织机构的关键战略,尤其是对于涉及复杂的制造和运营流程 ...

  3. 一起来作画吧「GitHub 热点速览 v.22.14」

    作者:HelloGitHub-小鱼干 又一个现象级.火爆社交媒体的项目--多人作画,把你想要放置的元素添加到某一个画布上,Reddit Place 便有了你的痕迹.在本周特推中 reddit-plac ...

  4. C++ functional库中的仿函数

    一.仿函数简介 仿函数(functor)又称之为函数对象(function object),实际上就是 重载了()操作符 的 struct或class. 由于重载了()操作符,所以使用他的时候就像在调 ...

  5. 黑客入门——渗透必备神器Burpsuit的安装和简单使用教程

    ​ 很多人没有听说过burp全称(BurpSuite)BurpSuite是一款白帽子,黑帽子渗透测试必备工具,通过拦截HTTP/HTTPS的web数据包,当浏览器和相关应用程序的中间人,进行拦截.修改 ...

  6. 2021.12.08 平衡树——FHQ Treap

    2021.12.08 平衡树--FHQ Treap http://www.yhzq-blog.cc/fhqtreapzongjie/ https://www.cnblogs.com/zwfymqz/p ...

  7. python中一些列表知识

    列表 序列是 Python 中最基本的数据结构. 序列中的每个值都有对应的位置值,称之为索引,第一个索引是 0,第二个索引是 1,依此类推. Python 有 6 个序列的内置类型,但最常见的是列表和 ...

  8. CRUSE: Convolutional Recurrent U-net for Speech Enhancement

    CRUSE: Convolutional Recurrent U-net for Speech Enhancement 本文是关于TOWARDS EFFICIENT MODELS FOR REAL-T ...

  9. XCTF练习题---WEB---get_post

    XCTF练习题---WEB---get_post flag:cyberpeace{5526ac8044f1c5cfb5c421d34dff7822} 解题步骤: 1.观察题目,打开场景 2.观察页面内 ...

  10. redo log 和 binlog 的一些总结

    1 redo log 和 binlog 的区别 redo log 是 InnoDB 引擎特有的:binlog 是 MySQL 的 Server 层实现的,所有引擎都可以使用. redo log 是物理 ...