热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

mysql恢复dump文件_详解三种方法快速从mysqldump文件中恢复XX表

概述这里以一份备份文件50G的文件来恢复,假设要恢复其中一张表,如果做全库恢复不太现实。下面使用正则匹配的方式去把需要恢复的表数据拿出来,

概述

这里以一份备份文件50G的文件来恢复,假设要恢复其中一张表,如果做全库恢复不太现实。下面使用正则匹配的方式去把需要恢复的表数据拿出来,然后进行恢复。

注意前两种方法show tables的表顺序要和mysqldump时的顺序相同

先看一下show tables的顺序:

0a1e770ff0454e89fcb307ce2b629b04.png

1、基于awk截取顺序恢复

顺序恢复calendar表到zt_dept表

awk '/^-- Table structure for table .calendar./,/^-- Table structure for table .zt_dept./{print}' zentao20200505-233001.sql > /data/t1.sql

9871b57c1cfb8e22c9c59e9baa9f9948.png

2、基于sed截取顺序恢复

顺序恢复calendar表到zt_dept表

cat zentao20200505-233001.sql | sed -n -e '/Table structure for table .calendar./,/Table structure for table .zt_dept./p'> /data/t2.sql

b017996eb48aa6f08ec2a4dc07039b5a.png

3、基于sed单表恢复sed -n -e '/DROP TABLE.*`calendar`/,/UNLOCK TABLES/p' zentao20200505-233001.sql > /data/t3.sql

82f47ec1fd46ab3ca3f9464c7ff0b3aa.png

最后做数据恢复时直接source /data/tables.sql即可。

cec57fe9b49f0963edd0be9dc0af3cbf.png



推荐阅读
author-avatar
乌鸦bz_371
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有