当前位置:网站首页>MYSQL误删数据恢复
MYSQL误删数据恢复
2022-08-03 18:38:00 【m0_67401660】
目录
所有演示代码
-- 查看binlog是否开启
show variables like 'log_bin';
-- 查询binlog日志
show binlog EVENTS;
-- 创建表
CREATE TABLE `user_5` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(100) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=36 DEFAULT CHARSET=utf8;
-- 新增3条数据
INSERT INTO user_5 VALUE(1, '王明');
INSERT INTO user_5 VALUE(2, '王亮');
INSERT INTO user_5 VALUE(3, '李鹏');
-- 查看数据
select * from user_5;
-- 删除user_5表 - 误删操作
-- 三种查看binlog日志的方式
-- 查询binlog日志(默认查询第1个binlog)
show binlog EVENTS;
-- 指定log_name进行查询(log_name可以通过mysql目录中查看, 也可以通过上一步命令推断):
show binlog EVENTS in 'mysql-bin.000004';
-- 指定pos从1520开始查询, 返回10条记录
show binlog EVENTS in 'mysql-bin.000004' from 1520 LIMIT 0, 10;
-- 恢复数据(命令执行)
-- mysqlbinlog binlog日志位置 --start-position ${Pos日志起始位置} --stop-position ${End_log_pos日志截止位置}
mysqlbinlog /var/lib/mysql/mysql-bin.000001 --start-position 1974 --stop-position 2250 | mysql -uroot -p123456
生成的binlog文件命名规则
binlog文件会产生很多, 并非一个文件, 所以通常需要指定binlog文件名查询

binlog文件

自定义binlog文件前缀
binlog文件命名规则:自定义的前缀 + 递增数值
mysql-bin+递增000001 = mysql-bin.000001mysql-bin.000002 …
三种查看binlog日志方式
– 默认查询第1个binlog
show binlog EVENTS;
– 指定log_name进行查询(log_name可以在mysql安装目录中查看
show binlog EVENTS in ‘mysql-bin.000004’;– 指定pos从1520开始查询, 返回10条记录
show binlog EVENTS in ‘mysql-bin.000004’ from 1520 LIMIT 0, 10;
恢复步骤
第一步: 首先需要找到待恢复的sql在哪个binlog文件中以及哪个Pos位置, 然后执行
SQL命令[show binlog EVENTSin ‘mysql-bin.000004’] 查询指定binlog日志详情, 可以看到下图中存放创建表语句的位置是1974 - 2257 (Pos列 - End_log_pos列)

第二步: 执行恢复语句
进入mysql安装的bin目录中, 执行以下命令进行数据恢复.
mysqlbinlog /var/lib/mysql/mysql-bin.000004 --start-position 1974 --stop-position 2257| mysql -uroot -p123456
mysqlbinlog b i n l o g 文件全路径 ∗ ∗ − − s t a r t − p o s i t i o n ∗ ∗ {binlog文件全路径}** --start-position ** binlog文件全路径∗∗−−start−position∗∗{起始Pos}–stop-position ${截止Pos}|
mysql -u**KaTeX parse error: Undefined control sequence: \- at position 8: {账号}** \̲-̲p**{密码}**
先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦
边栏推荐
- POJ 2377 Bad Cowtractors(最大生成树)
- 云图说丨初识华为云微服务引擎CSE
- MPLS的简单应用于实验
- Online monitoring of UPS power supply and operating environment in the computer room, the solution is here
- How does MySQL permanently support Chinese input once and for all?
- 调用EasyCVR云台控制接口时,因网络延迟导致云台操作异常该如何解决?
- SQL代码需要供其他人复用,为什么传统的复制代码不可靠?
- 2022/08/02------丑数
- VsCode preview Geojson data
- B628芯片电路图,B628升压IC的PCB布局PCB
猜你喜欢

MySQL——增删改查进阶

梅科尔工作室-14天华为培训六

EasyNTS上云网关断电重启后设备离线是什么原因?

【美丽天天秒】链动2+1模式开发

技术开发人员常用的安全浏览器

idea——同一项目开启多个实例(不同端口)

智能合约安全——delegatecall (2)

Online monitoring of UPS power supply and operating environment in the computer room, the solution is here

How does MySQL permanently support Chinese input once and for all?

Zhong Hua, senior architect of Ali: China-Taiwan strategic thinking and architecture practice; including internal implementation manual
随机推荐
Oracle 脚本实现简单的审计功能
【Django-Docker】Sqlite3.db读取权限不够-20220803
MD5是对称加密还是非对称加密,有什么优缺点
C#将位图旋转90度
架构基本概念和架构本质
阿里资深架构师钟华曰:中台战略思想与架构实战;含内部实施手册
2020icpc亚洲区域赛(济南)M题Cook Pancakes(小根堆的应用)
基于ck+redash构建MySQL慢日志+审计日志展示平台
安装porterLB
WEB 渗透之CSRF
With the help of Kubernetes kubekey speed installation
BinomialTree 二叉树
Gson 学习笔记
B628芯片电路图,B628升压IC的PCB布局PCB
201709-3 CCF jason查询 (满分题解)
YAML中多行字符串的配置方法:|+、 |、 |-、 >+、 >、 >-的区别
三丁基-巯基膦烷「tBuBrettPhos Pd(allyl)」OTf),1798782-17-8
不要小看 WebSocket!长连接、有状态、双向、全双工都是王炸技能
细胞不可渗透的荧光探针 锌离子荧光探针Zinquin 151606-29-0
在线监控机房内的UPS电源及运行环境,解决方案来了