当前位置: 首页 > news >正文 mysql 日志恢复 news 2025/4/29 12:29:25 一:查看是否开启binlog日志 show variables like 'log_%'; 二:查看日志存放目录: SHOW VARIABLES LIKE '%datadir%'; 三:查看日志列表 show binary logs; #获取binlog文件列表 show master status; #查看当前正在写入的binlog文件 四:导出指定binlog日志 #把bin.00032日志转成temp.sql(时间是2024-09-11 8:54:40,2024-09-11 12:59:10范围内的) mysqlbinlog --no-defaults -d test --start-datetime='2024-09-11 8:54:40' --stop-datetime='2024-09-11 12:59:10' bin.000032 >temp.sql#恢复sql source temp.sql; #指定位置(远程登录日志并且恢复指定日志的数据) mysqlbinlog --start-position=312 --stop-position=647 --base64-output=decode-rows -vv bin.000032 >temp.sql 五:binlog日志转成可读日志(把binlog日志下载下来放到本地,本地转成可读的) mysqlbinlog --no-defaults -vv --base64-output=decode-rows D:\data.000501 > D:\temp.sql 六:过滤binlog日志 #查找包含表名同时包含DELETE得行,并获取前面一行-B1,后面n+2,n为表得字段个数-A27(比如我sys_test表有25个字段那么就是n+2就是A27) grep sys_test 1.sql -B1 -A27|grep INSERT -B1 -A27 >2.sql 七:把delte语句转成insert语句 #linux环境 cat temp.sql | sed -n '/###/p' | sed 's/### //g;s/\/\*.*/,/g;s/DELETE FROM/;INSERT INTO/g;s/WHERE/SELECT/g;' |sed -r 's/(@17.*),/\1;/g' | sed 's/@1=//g'| sed 's/@[1-9]=/,/g' | sed 's/@[1-9][0-9]=/,/g' > mysqllogOK.sql 查看全文 http://www.mrgr.cn/news/26497.html 相关文章: Unity中InputField一些属性的理解 66. 构建乘积数组 上海市高等学校信息技术水平考试 C程序设计(2020D场)全解 力扣每日一题:236.二叉树的最近公共祖先 【linux007】目录操作命令篇 - mkdir 命令 2024年职场人士都在用的PDF转换工具大赏 Flask 第六课 -- 路由 PMP--一模--解题--41-50 react 组件通讯 代码随想录训练营 Day60打卡 图论part10 SPFA算法 Bellman-Ford 之判断负权回路 Bellman-Ford 之单源有限最短路 JavaScript高级——变量提升和函数提升 四、滑动窗口-算法总结 Debian11之Python3安装 java多线程编程 线程池的使用 spring security OAuth2 搭建资源服务器以及授权服务器/jdbc/jwt两种方案 第 11篇 Helm 部署 RabbitMQ 简单了解 JVM 【开放词汇检测】基于MMDetection的MM-Grounding-DINO实战 一天认识一个硬件之CPU 使用HTML和CSS制作网页的全面指南
一:查看是否开启binlog日志 show variables like 'log_%'; 二:查看日志存放目录: SHOW VARIABLES LIKE '%datadir%'; 三:查看日志列表 show binary logs; #获取binlog文件列表 show master status; #查看当前正在写入的binlog文件 四:导出指定binlog日志 #把bin.00032日志转成temp.sql(时间是2024-09-11 8:54:40,2024-09-11 12:59:10范围内的) mysqlbinlog --no-defaults -d test --start-datetime='2024-09-11 8:54:40' --stop-datetime='2024-09-11 12:59:10' bin.000032 >temp.sql#恢复sql source temp.sql; #指定位置(远程登录日志并且恢复指定日志的数据) mysqlbinlog --start-position=312 --stop-position=647 --base64-output=decode-rows -vv bin.000032 >temp.sql 五:binlog日志转成可读日志(把binlog日志下载下来放到本地,本地转成可读的) mysqlbinlog --no-defaults -vv --base64-output=decode-rows D:\data.000501 > D:\temp.sql 六:过滤binlog日志 #查找包含表名同时包含DELETE得行,并获取前面一行-B1,后面n+2,n为表得字段个数-A27(比如我sys_test表有25个字段那么就是n+2就是A27) grep sys_test 1.sql -B1 -A27|grep INSERT -B1 -A27 >2.sql 七:把delte语句转成insert语句 #linux环境 cat temp.sql | sed -n '/###/p' | sed 's/### //g;s/\/\*.*/,/g;s/DELETE FROM/;INSERT INTO/g;s/WHERE/SELECT/g;' |sed -r 's/(@17.*),/\1;/g' | sed 's/@1=//g'| sed 's/@[1-9]=/,/g' | sed 's/@[1-9][0-9]=/,/g' > mysqllogOK.sql 查看全文 http://www.mrgr.cn/news/26497.html 相关文章: Unity中InputField一些属性的理解 66. 构建乘积数组 上海市高等学校信息技术水平考试 C程序设计(2020D场)全解 力扣每日一题:236.二叉树的最近公共祖先 【linux007】目录操作命令篇 - mkdir 命令 2024年职场人士都在用的PDF转换工具大赏 Flask 第六课 -- 路由 PMP--一模--解题--41-50 react 组件通讯 代码随想录训练营 Day60打卡 图论part10 SPFA算法 Bellman-Ford 之判断负权回路 Bellman-Ford 之单源有限最短路 JavaScript高级——变量提升和函数提升 四、滑动窗口-算法总结 Debian11之Python3安装 java多线程编程 线程池的使用 spring security OAuth2 搭建资源服务器以及授权服务器/jdbc/jwt两种方案 第 11篇 Helm 部署 RabbitMQ 简单了解 JVM 【开放词汇检测】基于MMDetection的MM-Grounding-DINO实战 一天认识一个硬件之CPU 使用HTML和CSS制作网页的全面指南