HOWTO · MySQL
在 MySQL 中複製資料庫
本文介紹如何複製 MySQL 資料庫。
建立現有資料庫的副本稱為 MySQL Clone 方法。克隆包括一次性建立表結構、約束、函式、過程、觸發器以及與表相關的所有功能的副本。
這些功能使使用者更加可靠,即使一個節點出現故障,副本或克隆也可以提供服務。當發生意外丟失或故障時,製作資料庫副本和克隆會有所幫助。
備份過程可以每天進行,也可以在特定的時間間隔內進行。在同一伺服器例項上覆制資料庫的方法如下。
在 MySQL 中的同一伺服器例項上覆制資料庫
將源資料庫複製到 SQL 指令碼檔案中。建立一個新的目標資料庫,然後將 SQL 指令碼檔案匯入新資料庫。
這是一個三步過程。
> mysql -u root -p
****
> mysqldump -u root -p firstDb > firstDbDump.sql
> create database newDb;
> mysql -u root -p newDb < firstdump.sql
> show databases;
> use newDb;
> show tables;
上面第一種方法的詳細描述和命令如下。
-
要繼續第一種方法,請在本地系統中安裝 MySQL 伺服器 8.0。
-
繼續安裝過程,安裝成功後,到達
bin路徑。 -
開啟環境變數,在系統 PATH 變數中新增 MySQL 系統的路徑。它允許從檔案系統中的任何位置訪問 MySQL。
-
開啟命令提示符,輸入如上所示的命令。此命令啟用 MySQL 提示符的使用。
-u屬性指定執行該值的使用者名稱;root是使用者名稱。-p屬性指定密碼,該密碼位於另一行中。密碼永遠不會新增到命令中。它以加密格式出現在另一行中。
-
輸入命令將檔案從該位置複製到臨時中間檔案。
-
mysqldump -u root -p database_name_to_be_cloned > filename_for_clone是指定mysqldump實用程式的命令,使用者名稱和密碼作為選項。它將資料庫名稱作為引數並將轉儲檔案放入檔案中。
>引數將輸出定向到特定檔案。 -
如果沒有提供檔名的絕對檔案路徑,SQL 檔案將儲存在安裝 MySQL 伺服器的
bin目錄中。 -
建立一個新資料庫,其中應該匯入 SQL 以克隆現有資料庫。
-
一旦一個臨時或中間檔案形成,它可以再次使用
<運算子讀入新形成的資料庫。運算子將 SQL 結果重定向到newDb資料庫中。 -
可以使用命令
show databases;檢查資料庫。此命令將列出當前 SQL 連線中的所有資料庫。 -
use命令允許使用者使用指定的資料庫。use 命令將引數作為資料庫名稱。 -
show tables允許使用者列出資料庫中存在的所有表。因此,可以使用最後三個命令檢查複製的內容。
在 MySQL 中使用|或管道運算子複製命令
一個線性命令獲取源資料庫的轉儲並重定向到另一個目標資料庫。
> mysqldump -u root -p sourceDb | mysql -u root -p targetDb
-
到達安裝 MySQL 的
bin資料夾。 -
從
bin資料夾開啟命令提示符。 -
使用上面的命令,事先分別建立源資料庫和目標資料庫。
-
該命令使用
mysqldump實用程式建立 SQL 轉儲,將使用者名稱和密碼作為強制選項。並且輸出被重定向到另一個目標資料庫。 -
|或管道符號主要是一種 LINUX/UNIX 命令運算子,允許使用者在一行中使用兩個或多個命令。它充當管道,將第一個命令的輸出提供給另一個命令。第二個命令通常使用管道符號分隔。
-
該命令與方法一中描述的相同,並且在一行中使用管道符號。
附上上述命令成功執行的截圖。
當我們輸入上述命令時,它會提示使用者輸入兩次密碼。根據此處的命令,兩次提到了 -p 選項,要求使用者輸入兩個資料庫的密碼。