从MySQL全库备份中恢复某个库和某张表的方法

  

在,Mysqldump官方工具中,如何只恢复某个库呢?

  

全库备份

        (root@HE1 ~) #, mysqldump -uroot - p——单独的事务————主数据=https://www.yisu.com/zixun/2> dump.sql      之前      

只还原erp库的内容

        (root@HE1 ~) # mysql -uroot -pMANAGER erp——一个数据库& lt; dump.sql      之前      

可以看出这里主要用到的参数是——一个数据库简写- o的参数,极大方便了我们的恢复灵活性。

  

那么如何从全库备份中抽取某张表呢,全库恢复,再恢复某张表小库还可以,大库就很麻烦了,那我们可以利用正则表达式来进行快速抽取,具体实现方法如下:

  

从全库备份中抽取出t表的表结构

        (root@HE1 ~) # sed - e '/?{H;美元! d;}’- e ' x;/创建表”t dump.sql/! d; q      之前            删除表如果不存在”;/* !40101年SET@saved_cs_client=@@character_set_client */;/* !40101 SETcharacter_set_client=utf8 */;      创建表“t”(      “id”int(10)不是零AUTO_INCREMENT,      “年龄”非常小的整数(4)NOT NULL默认“0”,      “名字”varchar (30) NOT NULL违约”,      主键(“id”)      )引擎=InnoDBAUTO_INCREMENT=4默认字符集=utf8;/* !40101年SETcharacter_set_client=@saved_cs_client */;      之前      

从全库备份中抽取出t表的内容

        (root@HE1 ~) # grep dump.sql 'INSERT成“t”      插入t 'VALUES (0, 0,”), (1 0“aa”), (2 0“bbb”), (3 25 ' helei ');      之前      

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

从MySQL全库备份中恢复某个库和某张表的方法