zoukankan      html  css  js  c++  java
  • 从MySQL全库备份中恢复某个库和某张表

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

    全库备份

    [root@HE1 ~]# mysqldump -uroot -p --single-transaction -A --master-data=2 >dump.sql

    只还原erp库的内容

    [root@HE1 ~]# mysql -uroot -pMANAGER erp --one-database <dump.sql

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

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

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

    [root@HE1 ~]# sed -e'/./{H;$!d;}' -e 'x;/CREATE TABLE `t`/!d;q' dump.sql

    DROP TABLE IF EXISTS`t`;

    /*!40101 SET@saved_cs_client     =@@character_set_client */;

    /*!40101 SETcharacter_set_client = utf8 */;

    CREATE TABLE `t` (

      `id` int(10) NOT NULL AUTO_INCREMENT,

      `age` tinyint(4) NOT NULL DEFAULT '0',

      `name` varchar(30) NOT NULL DEFAULT '',

      PRIMARY KEY (`id`)

    ) ENGINE=InnoDBAUTO_INCREMENT=4 DEFAULT CHARSET=utf8;

    /*!40101 SETcharacter_set_client = @saved_cs_client */;

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

    [root@HE1 ~]# grep'INSERT INTO `t`' dump.sql

    INSERT INTO `t`VALUES (0,0,''),(1,0,'aa'),(2,0,'bbb'),(3,25,'helei');

    本文出自 “贺磊的技术博客” 博客,请务必保留此出处http://suifu.blog.51cto.com/9167728/1830651

  • 相关阅读:
    解决FileReader读取文件乱码问题
    comparable 与 comparator
    JavaScript添加水印
    mybatis里oracle与MySQL的insert_update
    关于回车换行
    solr创建collection
    hbase相关配置说明
    java基础(十一)--- IO
    java基础(十)--- 异常
    c++中的vector原理
  • 原文地址:https://www.cnblogs.com/wajika/p/6718658.html
Copyright © 2011-2022 走看看