MySQL如何跨机器迁移数据?

经常会遇到如此需求,需把A主机上的MySQL数据库所有迁移到B主机上,或者部分数据库,所以接下来将介绍迁移所有数据库和迁移单个数据库时的数据迁移步骤。

1 实验环境

A主机(源主机):

  • IP地址:192.168.0.191
  • 系统版本:CentOS 6.8
  • MySQL版本:5.5
  • 源主机有以下数据库
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | laucyun            |
    | mysql              |
    | performance_schema |
    +--------------------+
    4 rows in set (0.00 sec)
    查看数据库laucyun内容:
    mysql> show tables;
    +-------------------+
    | Tables_in_laucyun |
    +-------------------+
    | users             |
    +-------------------+
    1 row in set (0.00 sec)mysql> select * from users;
    +----+----------+----------+----------------+
    | id | username | password | email          |
    +----+----------+----------+----------------+
    |  1 | laucyun  | 123456   | liu@liuker.xyz |
    +----+----------+----------+----------------+
    1 row in set (0.00 sec)
    
    其中,数据库laucyun中有数据库表usersusers表中有一条记录。

B主机(目标主机):

  • IP地址:192.168.0.192
  • 系统版本:CentOS 6.8
  • MySQL版本:5.5
  • 目标主机有以下数据库:
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    +--------------------+
    3 rows in set (0.00 sec)

源主机比目标主机多一个名为laucyun的数据库。

OK,开始环境介绍完后,先介绍迁移所有数据。

2 迁移所有数据库

目前实验环境中,源主机比目标主机多一个名为laucyun的数据库。

在源主机备份所有数据库:

$ mysqldump -uroot -p --all-databases > /home/all_databases.bak

提示输入root用户的密码,备份文件信息如下:

$ ll
total 552
-rw-r--r-- 1 root root 561449 Dec 31 13:02 all_databases.bak

拷贝备份文件all_databases.bak到目标主机:

$ scp all_databases.bak root@192.168.0.192:/home/

在目标主机还原所有数据库:

$ mysql -uroot -p < /home/all_databases.bak

提示输入root用户的密码。

验证是否成功:

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| laucyun            |
| mysql              |
| performance_schema |
+--------------------+
4 rows in set (0.00 sec)mysql> use laucyun;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -ADatabase changed
mysql> show tables;
+-------------------+
| Tables_in_laucyun |
+-------------------+
| users             |
+-------------------+
1 row in set (0.00 sec)mysql> select * from users;
+----+----------+----------+----------------+
| id | username | password | email          |
+----+----------+----------+----------------+
|  1 | laucyun  | 123456   | liu@liuker.xyz |
+----+----------+----------+----------------+
1 row in set (0.00 sec)

由此可见,目标主机上已经备份成功了源主机中所有数据库。

注意:当迁移所有数据库时,不用提前在目标主机创建好所有数据库。

3 迁移某个数据库

目前实验环境中,源主机比目标主机多一个名为laucyun的数据库。

在源主机备份数据库laucyun

$ mysqldump -uroot -p laucyun > /home/laucyun.bak

提示输入root用户的密码,备份文件信息如下:

$ ll
total 4
-rw-r--r-- 1 root root 1982 Dec 31 13:52 laucyun.bak

拷贝备份文件laucyun.bak到目标主机:

$ scp laucyun.bak root@192.168.0.192:/home/

在目标主机中创建好数据库laucyun

mysql> CREATE DATABASE `laucyun` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Query OK, 1 row affected (0.00 sec)

在目标主机还原数据库laucyun

$ mysql -uroot -p laucyun < /home/laucyun.bak

提示输入root用户的密码。

验证是否成功:

mysql> show tables;
+-------------------+
| Tables_in_laucyun |
+-------------------+
| users             |
+-------------------+
1 row in set (0.00 sec)mysql> select * from users;
+----+----------+----------+----------------+
| id | username | password | email          |
+----+----------+----------+----------------+
|  1 | laucyun  | 123456   | liu@liuker.xyz |
+----+----------+----------+----------------+
1 row in set (0.00 sec)

由此可见,目标主机上已经备份成功了源主机中数据库laucyun

注意:当迁移某个数据库时,需要提前在目标主机中创建好该数据库。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/473538.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ClickHouse的特性及读写

1 ClickHouse特性 OLAP数据库一般有2个要求&#xff1a;①容量要比关系型数据库大&#xff0c;②在线查询的速度要快。ClickHouse这两点都满足并且还支持标准的sql&#xff0c;支持比较复杂的语句&#xff0c;支持分布式。ClickHouse的几个显著特点如下&#xff1a; &#xff0…

天池 在线编程 最大得分(DP)

文章目录1. 题目2. 解题1. 题目 来源&#xff1a;https://tianchi.aliyun.com/oj/164423301311799378/184808348725744275 2. 解题 class Solution { public:/*** param matrix: the matrix* return: the maximum score you can get*/int maximumScore(vector<vector<i…

imagick用法!

https://coderwall.com/p/9hj97w sudo apt-get install imagemagick sudo apt-get install php5-imagick sudo service apache2 restart 使用imagick类&#xff1a; http://www.wodezhan.cn/?p15转载于:https://www.cnblogs.com/vincedotnet/p/3592957.html

天池 在线编程 LR String

文章目录1. 题目2. 解题1. 题目 来源&#xff1a;https://tianchi.aliyun.com/oj/164423301311799378/184808348725744276 2. 解题 class Solution { public:/*** param s: a string* param t: a string* param n: max times to swap a l and a r.* return: return if s can …

Python中如何在一行里获取多个异常

我知道这样&#xff1a; try:# 可能错的地方 except:# 如果错了执行这里也知道这样&#xff1a; try:# 可能错的地方 except IDontLikeYourFaceException:# 给爷笑一个 except YouAreTooShortException:# 踩高跷但是我想在两个不同的异常里做同样的事&#xff0c;我能想到的办法…

DolphinScheduler对比Airflow

DolphinSchedulerAirFlow稳定性单点故障去中心化的多Master和多Worke是&#xff08;单一调度程序&#xff09;HA额外要求不需要(本身就支持HA)Celery / Dask / Mesos Load Balancer DB过载处理任务队列机制&#xff0c;单个机器上可调度的任务数量可以灵活配置&#xff0c;当…

Python中字符串格式化:%和format

Python2.6推出了[str.format()]方法&#xff0c;和原有的%格式化方式有小小的区别。那个方法更好&#xff1f; 下面的方法有同样的输出&#xff0c;它们的区别是什么&#xff1f; #!/usr/bin/pythonsub1 "python string!"sub2 "an arg"a "i am a …

jsAutomation 服务器不能创建对象(转)

var ExApp new ActiveXObject("Excel.Application") “automation服务器不能创建对象”的问题的解决方案大全本人工作中的应用系统都是jsp的&#xff0c;大量javascript程序&#xff0c;一旦出“automation服务器不能创建对象”问题&#xff0c;大量报表及查询无法保…

天池 在线编程 音乐组合

文章目录1. 题目2. 解题1. 题目 来源&#xff1a;https://tianchi.aliyun.com/oj/164423301311799378/184808348725744274 2. 解题 对60求余后&#xff0c;0, 30的为 Cn2C_n^2Cn2​&#xff0c;其余的相加等于60的&#xff0c;种类相乘 class Solution { public:/*** param …

java之NIO(Channel,Buffer,Selector)

java之NIO 1 什么是NIO Java NIO (New IO&#xff0c;Non-Blocking IO)是从Java 1.4版本开始引入的一套新的IO API。NIO支持面向缓冲区的、基于通道的IO操作。NIO的三大核心部分&#xff1a;通道(Channel)&#xff0c;缓冲区(Buffer), 选择器(Selector)&#xff0c;数据总是从…

Python中对象名称前单下划线和双下划线有啥区别

单下划线 在一个类中的方法或属性用单下划线开头就是告诉别的程序这个属性或方法是私有的。然而对于这个名字来说并没有什么特别的。 引自PEP-8&#xff1a; 单下划线&#xff1a;"内部使用"的弱指示器。比如&#xff0c;from M import * 将不会引进用但下划线开头的…

JQUERY解析XML IE8的兼容问题

var str"xml字符串"; alert($(str).find("Row").attr("Id")); 在IE8下&#xff0c;这段脚本无法运行&#xff0c;&#xff0c;而在IE9以上的版是正常的 IE8浏览器只能强制把字符串转成XML ajaxfxml new ActiveXObject("Microsoft.XMLDOM&q…

LeetCode 1652. 拆炸弹(前缀和)

文章目录1. 题目2. 解题1. 题目 你有一个炸弹需要拆除&#xff0c;时间紧迫&#xff01;你的情报员会给你一个长度为 n 的 循环 数组 code 以及一个密钥 k 。 为了获得正确的密码&#xff0c;你需要替换掉每一个数字。所有数字会 同时 被替换。 如果 k > 0 &#xff0c;将…

Hadoop DistCp工具简介及其参数

1 概述 DistCp&#xff08;分布式拷贝&#xff09;是用于大规模集群内部和集群之间拷贝的工具。 它使用Map/Reduce实现文件分发&#xff0c;错误处理和恢复&#xff0c;以及报告生成。 它把文件和目录的列表作为map任务的输入&#xff0c;每个任务会完成源列表中部分文件的拷贝…

MYSQL从入门到精通

SQL是数据库的查询语言&#xff0c;语法结构简单&#xff0c;相信本文会让你从入门到熟练。 掌握SQL后&#xff0c;不论你是产品经理、运营人员或者数据分析师&#xff0c;都会让你分析的能力边界无限拓展。别犹豫了&#xff0c;赶快上车吧&#xff01; SQL最小化的查询结构如下…

LeetCode 1653. 使字符串平衡的最少删除次数(DP)

文章目录1. 题目2. 解题1. 题目 给你一个字符串 s &#xff0c;它仅包含字符 a 和 b​​​​ 。 你可以删除 s 中任意数目的字符&#xff0c;使得 s 平衡 。 我们称 s 平衡的 当不存在下标对 (i,j) 满足 i < j 且 s[i] b 同时 s[j] a 。 请你返回使 s 平衡 的 最少 删除…

DistCp迁移Hive数据过程中源集群增加删除文件等场景测试

1 概述 由于在数据迁移过程中&#xff0c;上层任务仍在运行&#xff0c;会出现源集群新增文件及删除文件的情况&#xff0c;因此进行测试 2 需要同步的数据文件说明 源集群&#xff1a;192.168.40.100:8020&#xff0c;目标集群&#xff1a;192.168.40.200:8020   数据目录及…

CentOS6.0 yum php mcrypt 扩展安装问题

基本原理是&#xff1a;首先使mcrypt软件能够运行&#xff0c;然后安装php扩展模块&#xff0c;并在php.ini配置。 这里注意的是mcrypt软件依赖libmcrypt和mhash两个库&#xff0c;所以安装配置顺序从右至左 I 下载安装mcrypt 1.先去http://www.sourceforge.net 下载Libmcrypt,…

我不想用for循环

为什么要挑战自己在代码里不写for loop&#xff1f;因为这样可以迫使你去使用比较高级、地道的语法或库。文中以python为例子&#xff0c;讲了不少大家其实在别人的代码里都见过、但自己很少用的语法。 这是一个挑战。我要你避免在任何情况下写for循环。同样的&#xff0c;我也…

LeetCode 1654. 到家的最少跳跃次数(BFS)

文章目录1. 题目2. 解题1. 题目 有一只跳蚤的家在数轴上的位置 x 处。请你帮助它从位置 0 出发&#xff0c;到达它的家。 跳蚤跳跃的规则如下&#xff1a; 它可以 往前 跳恰好 a 个位置&#xff08;即往右跳&#xff09;。它可以 往后 跳恰好 b 个位置&#xff08;即往左跳&…