MySQL, MariaDB, 整個資料庫的複製方法
如果你想一次複製所有的資料,包括用戶數據和結構,你可以使用以下方法:
1.使用 mysqldump
進行完整備份:
mysqldump
可以用來備份整個 MariaDB 數據庫,包括資料表結構和數據。以下是備份和還原的步驟:
首先到原始主機上
mysqldump -u root -p --all-databases > full_backup.sql
這時候你會取得 full_backup.sql 檔案,將此檔案複製到目標主機上頭
並且到目標主機上做還原的動作
mysql -u root -p < full_backup.sql
2.用外部程式直接複製 MariaDB 資料庫
可以用 Percona XtraBackup , 安裝方法可以看 https://docs.percona.com/percona-xtradb-cluster/8.0/apt.html#prerequisites
備份指令如下:
innobackupex --user=root --password=your_password /path/to/backup_directory
還原指令如下
innobackupex --copy-back /path/to/backup_directory
3.複製用戶資訊
備份以及還原完資料後,要記得把用戶資料也都一起複製過來,首先用 root 或是管理員等級的帳號登入,並且下面的執行指令,把用戶資訊匯出
mysqldump -u root -pYourPassword -R --databases mysql > user_backup.sql
注意 -p
後面直接跟著密碼,中間不能有空格。
還原用戶資訊
SOURCE /path/to/user_backup.sql;
結論
這將在新主機上創建與原始主機相同的用戶帳號、密碼和許可權,以及把之前的所有資料複製到新主機上面。請確保新主機上的 MariaDB 版本與原始主機上的版本相容,並且新主機的網絡設置和防火牆規則允許用戶連接。
近期留言