MySQL複製資料庫

本教程將向您展示如何在同一臺伺服器上以及從一臺伺服器複製MySQL資料庫到另一臺伺服器。

在同一臺伺服器上複製一個MySQL資料庫

要複製一個MySQL資料庫,您需要執行以下步驟:

  • 首先,使用CREATE DATABASE語句創建一個新的資料庫。
  • 其次,使用mysqldump工具導出要複製的資料庫的所有資料庫對象和數據。
  • 第三,將SQL轉儲檔導入新的資料庫。

作為一個演示,假設要把zaixiandb資料庫複製到zaixiandb_backup資料庫。請參考以下操作步驟 -

步驟1, 創建zaixiandb_backup資料庫:

首先,登錄到MySQL資料庫伺服器:

C:\Users\Administrator> mysql -u root -p
Enter password: **********

然後,使用CREATE DATABASE語句如下:

CREATE DATABASE zaixiandb_backup;

第三,使用SHOW DATABASES命令驗證:

SHOW DATABASES

MySQL資料庫伺服器返回以下輸出:

如您所見,我們已經成功創建了zaixiandb_backup資料庫。

步驟2

使用mysqldump工具將資料庫對象和數據轉儲到SQL檔中。

假設要將資料庫對象和數據庫轉儲到位於D:\database_bak檔夾的SQL檔中,這裏是以下命令:

C:\Users\Administrator> mysqldump -u root -p zaixiandb > d:\database_bak\zaixiandb.sql
Enter password: **********

基本上,此命令指示mysqldump使用具有密碼的root用戶帳戶登錄到MySQL伺服器,並將資料庫對象和zaixiandb資料庫的數據導出到d:\database_bak\zaixiandb.sql。 請注意,運算符(>)表示導出。

步驟2

d:\database_bak\zaixiandb.sql檔導入到zaixiandb_backup資料庫。

C:\Users\Administrator> mysql -u root -p zaixiandb_backup < d:\database_bak\zaixiandb.sql
Enter password: **********

請注意,運算符(<)表示導入。

要驗證導入,可以使用SHOW TABLES命令快速檢查。

mysql> SHOW TABLES FROM zaixiandb_backup;

它返回以下輸出:

如您所見,我們已在同一臺伺服器上將所有對象和數據從zaixiandb資料庫複製到zaixiandb_backup資料庫。

將MySQL資料庫從伺服器複製到另一個伺服器

要將MySQL資料庫從伺服器複製到另一個伺服器,請使用以下步驟:

  • 將源伺服器上的資料庫導出到SQL轉儲檔。
  • 將SQL轉儲檔複製到目標伺服器
  • 將SQL轉儲檔導入到目標伺服器

我們來看看如何將zaixiandb資料庫從伺服器複製到另一個伺服器。

首先,將zaixiandb資料庫導出到db.sql檔。

C:\Users\Administrator> mysqldump -u root -p --databases zaixiandb > d:\database_bak\db.sql
Enter password: **********

請注意,--database選項允許mysqldump在SQL轉儲檔中包含CREATE DATABASE和USE語句。這些語句將在目標伺服器中創建zaixiandb資料庫,並將新資料庫作為加載數據的默認資料庫。

簡而言之,當使用--database選項時,SQL轉儲檔的開頭包含以下語句。

CREATE DATABASE `zaixiandb2`.

USE `zaixiandb2`;

第三,將db.sql檔導入到資料庫伺服器,假定將db.sql檔複製到d:\database_bak\檔夾。

C:\Users\Administrator> mysql -u root -p zaixiandb2 < d:\database_bak\db.sql

在本教學中,您已經逐步瞭解如何在同一伺服器上複製MySQL資料庫,並將資料庫從伺服器複製到另一個伺服器。


上一篇: MySQL技巧 下一篇: MySQL存儲過程