日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

MySQL如何跨机器迁移数据?

發布時間:2024/7/5 数据库 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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中有數據庫表users,users表中有一條記錄。

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。

注意:當遷移某個數據庫時,需要提前在目標主機中創建好該數據庫。

總結

以上是生活随笔為你收集整理的MySQL如何跨机器迁移数据?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。