zoukankan      html  css  js  c++  java
  • mysql数据迁移

    在做迁移的时候,源mysql的配置和目标mysql的配置尽量要是一样的,不一样的没有测过。。。可按照下面的方法自行测试

    一、迁移所有数据库 (这部分比较简单,就摘抄了一下),主要看第二节

    迁移前,源端有以下数据库:

    1. mysql> show databases;  
    2. +--------------------+  
    3. Database           |  
    4. +--------------------+  
    5. | information_schema |  
    6. | dan                |  
    7. | mysql              |  
    8. | performance_schema |  
    9. | test               |  
    10. +--------------------+  
    11. rows in set (0.00 sec)  

    迁移前,目标端的有以下数据库:

    1. mysql> show databases;  
    2. +--------------------+  
    3. Database           |  
    4. +--------------------+  
    5. | information_schema |  
    6. | mysql              |  
    7. | performance_schema |  
    8. | test               |  
    9. +--------------------+  
    10. rows in set (0.01 sec)  

    源端比目标端多一个dan数据库。

    --目标端是刚安装好的mysql,默认就有这4个数据库。

    在源端备份所有数据库:指令 

    [root@target_pc databasefile]# mysqldump -u root -p --all-databases > /backup/databasefile/all_databases_20150325.bak

    拷贝备份文件到目标端

    1. [root@target_pc databasefile]# scp all_databases_20150325.bak 192.168.8.225:/backup/databasefile/  
    2. The authenticity of host '192.168.8.225 (192.168.8.225)' can't be established.  
    3. RSA key fingerprint is ed:ee:f6:e6:f5:3b:76:ed:18:fa:2d:eb:73:83:0e:13.  
    4. Are you sure you want to continue connecting (yes/no)? yes  
    5. Warning: Permanently added '192.168.8.225' (RSA) to the list of known hosts.  
    6. root@192.168.8.225's password:   
    7. all_databases_20150325.bak                                                                                                                                      100%  598KB 598.3KB/s   00:00      
    8. [root@target_pc databasefile]#   

    在目标端还原所有数据库 

    [root@source_pc databasefile]# mysql -u root -p < all_databases_20150325.bak 

    Enter password: 

    自行查看数据迁移结果

    当迁移所有数据库时,不用提前在目标端创建好所有数据库。

    二、迁移某个数据库

    源端的所有数据库:(引擎都是用的innodb)

    复制代码
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | ERP01              |
    | HS                 |
    | TA02               |
    | TA03  #迁移这一个,里面是含有数据的             |
    | db1                |
    | fundlx             |
    | mysql              |
    | performance_schema |
    | test               |
    | test1              |
    | xzszm_2_data       |
    | xzszm_data         |
    +--------------------+
    复制代码
    复制代码
    在源端先备份需要迁移的这个数据库:

    1.在源端创建一个文件夹:/home/backup/ 2.执行指令:[root@mysql2 wuchao]# mysqldump -uroot -p -B -F -R -x --master-data=2 TA03 | gzip > /home/wuchao/backup/bak_$(date +%F).sql.gz 查看: [root@mysql2 wuchao]# ls /home/wuchao/backup/ bak_2018-01-05.sql.gz #文件存在了 然后将文件迁移到目标服务器: [root@mysql2 wuchao]# scp /home/wuchao/backup/bak_2018-01-05.sql.gz wuchao@192.168.111.111:/home/wuchao/backup #注意要在目标服务器上提前创建好该文件夹,并且调整该文件夹的权限,不能为root用户权限,因为scp是基于ssh的,而mysql默认是
    不允许root远程链接的,将文件夹权限改为wuchao这个用户
    wuchao@192.168.111.111's password: #填写密码 目标服务器 bak_2018-01-05.sql.gz #生成文件
    复制代码

    在目标服务器上要提前将TA03这个数据库创建,注意名称要和源的数据库名称相同,只需要创建这个数据库,不需要其他的操作

    然后查看创建成功:

    复制代码
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | TA03      #创建好了          |
    | mysql              |
    | performance_schema |
    | test               |
    +--------------------+
    5 rows in set (0.00 sec)
    
    mysql> use TA03;
    复制代码

    最后将备份来的文件解压,然后导入:

    [wuchao@redis01 ~]$ sudo gzip -d /home/wuchao/backup/bak_2018-01-05.sql.gz 
    [sudo] password for wuchao: 
    [wuchao@redis01 ~]$ mysql -u root -p TA03 < /home/wuchao/backup/bak_2018-01-05.sql
     Enter password: 
    [wuchao@redis01 ~]$ 

    再到目标数据库中查看:数据迁移成功

    复制代码
    mysql> show tables;
    +-----------------------------------------+
    | Tables_in_TA03                          |
    +-----------------------------------------+
    | TA03_allholiday                         |
    | TA03_clearingprograminformation         |
    | TA03_clearingprogramtype                |
    复制代码
  • 相关阅读:
    置顶功能改进
    Skin设计小组新作品发布—绿草蓝天
    代码着色功能改进
    增加了将文章收藏至网摘的功能
    [公告]C++博客开通
    [新功能]显示文章所属分类
    新Skin发布
    北京.NET俱乐部活动公告
    正式开始学习.NET 2.0
    关于共同学习.NET 2.0的想法
  • 原文地址:https://www.cnblogs.com/xingkongzhizhu/p/10942309.html
Copyright © 2011-2022 走看看