MYSQL误删数据恢复
目录
所有演示代码
生成的binlog文件命名规则
三种查看binlog日志方式
恢复步骤
所有演示代码
-- 查看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文件命名规则: 自定义的前缀 + 递增数值
mysql-bin + 递增000001 = mysql-bin.000001 mysql-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 EVENTS in '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 ${binlog文件全路径} --start-position ${起始Pos} --stop-position ${截止Pos} |
mysql -u${账号} -p${密码}
MYSQL误删数据恢复相关推荐
- win32 mysql误删数据恢复_mysql误删数据恢复
原创 mysql误删数据恢复我这里搜了一下,貌似好多方法,搜索表后是因为表太多所以看不完所以就看到了这篇文章,你看看你的数据重建了吗?或者点击按钮在目录下的文件恢复? 试试这个,如果没有的话,说明这个 ...
- mysql误删数据恢复操作
第一步:保证mysql已经开启binlog,查看命令: show variables like '%log_bin%'; 查看binlog存放日志文件目录 show variables like '% ...
- 【MYSQL】误删数据恢复流程说明
误删数据恢复流程说明 项目场景:使用navicat时,不小心误删除几条数据,需要对数据进行恢复 解决方案: 第一步:保证mysql已经开启binlog,查看命令: 如果没有开启binlog,也没有预先 ...
- linux mysql 误删系统文件恢复_干货分享丨如何恢复Linux下误删/etc目录数据
对于运维工作者来说,可能最让人担心的,是服务器宕机: 最让人无助的,是被DDOS: 而最让人心惊肉跳的,是rm -rf *这个命令-- 当你执行rm -rf命令时,万一哪个变量没赋值 听说过被删空服务 ...
- 阿里云rds mysql数据库数据恢复到ecs中
背景: aliyun上的rds数据库快满了,于是删除了某个备份的表 后面大boss说是有用的表,需要恢复回来,阿里云有7天内的物理全量备份(通过percona-xtrabackup备份的) 第一时间应 ...
- MySQL误删数据救命指南:必收藏
首先看下mysql误删数据排名最前的几种是: 1.误删文件 2.误删库.表 3.错误全表删除 / 更新 4.升级操作失误 都来看看你命中过几个,hoho. 简单说下我亲手造的一个大事故吧. 那大概是一 ...
- oracle如何把误删的数据恢复,oracle误删数据恢复方法小结
如果用户误删/更新了数据后,作为用户并没有什么直接的方法来进行恢复,他们必须求助DBA来对数据库进行恢复,到了Oracle9i,这一个难堪局面有所改善.Or(www.jb51.cc)acle 9i中提 ...
- oracle误删数据恢复方法
误删数据恢复 删除表数据有三种方式:delete.drop和truncate delete误删除的解决方法 原理: 利用oracle提供的闪回方法,如果在删除数据后还没做大量的操作(只要保证被删除数据 ...
- oracle用户删除了可以恢复吗,oracle_oracle误删数据恢复方法小结,如果用户误删/更新了数据后, - phpStudy...
oracle误删数据恢复方法小结 如果用户误删/更新了数据后,作为用户并没有什么直接的方法来进行恢复,他们必须求助DBA来对数据库进行恢复,到了Oracle9i,这一个难堪局面有所改善.Or(www. ...
- PLSQL 误删表恢复及误删数据恢复
误删表恢复 1.查看你删除的是哪张表: select * from user_recyclebin t where DROPTIME >'2022-08-26 00:00:00' and t.o ...
最新文章
- 一种巧妙的drawable.xml替代方案
- Koa与Node.js开发实战(1)——Koa安装搭建(视频演示)
- QML识别模块identifiedmodules
- c# 正则表达式 html标签,C#匹配HTML标签,正则表达式谁会?
- 计算器java程序设计报告总体设计,java程序设计实验报告-计算器
- 【JAVA基础篇】运算符
- 设计灵感|三维时代!C4D人物设计案例
- 数据仓库如何保证数据一致性
- 软件开发未来五大技术趋势
- 编写一个函数,输入n为偶数时,调用函数求1/2+1/4+…+1/n,当输入n为奇数时,调用函数求1/1+1/3+…+1/n
- Django CSRF Bypass 漏洞分析(CVE-2016-7401)
- 解决Microsoft Office SDX Helper服务占用率高
- 西安交通大学大学计算机考试题,西安交通大学17年3月课程考试《计算机应用基础》作业考核试题...
- 设置.md文件默认用Typora打开
- NeurIPS'22杰出论文奖:3项研究出自华人团队,AlexNet获时间检验奖
- 写给初学者的Python与pip安装教程
- 2022-2028年中国珠宝电子商务行业市场需求分析及投资方向研究报告
- 2022-2028年全球冷轧钢卷行业供需分析及发展前景研究报告
- 架构:数据系统Apache Hop简介以及与Kettle的异同
- 自动化运维工具——【ansible】——从菜鸟到菜鸟
热门文章
- (附源码)ssm网上购物系统 毕业设计 123361
- 新浪微博自动化运维平台实践
- 如何在WPS2000中插入AutoCad图形文件(转)
- 博客园2013年5月份第2周源码发布详情
- 使用jsp实现留言板功能
- 计算机二级模拟系统在线,计算机二级foxbase题库系统
- [ CSOL ] - zihao + 自适应 + 文字滚动 + 媒体查询 + fullpage + 手风琴 + 延时动画
- 用计算机弹让我做你的眼睛,童珺《让我做你的眼睛 (改编版)》[FLAC/MP3-320K]
- ImageList00
- 诺基亚Nokia的PC套件导出短信乱码问题解决(转)