簡體   English   中英

Percona XtraBackup - 將數據庫備份恢復到包含其他數據庫的 MySQL 服務器

[英]Percona XtraBackup - restoring a database backup into a MySQL server containing other databases

我正在嘗試使用 Percona XtraBackup (15 Gb) 遷移大型 MySQL 數據庫。

恢復備份的默認 innobackupex 命令需要移動或刪除 mysql 數據目錄 (/var/lib/mysql):

mkdir /tmp/mysql
cd /var/lib/mysql/; mv * /tmp/mysql/
innobackupex --user=user --password=password --copy-back /data/backups/new_backup

目標 MySQL 服務器已經包含多個數據庫。 有沒有辦法將數據庫與現有數據庫一起恢復(不會有模式名稱沖突)?

TIA

確實可以使用 innobackup/xtrabackup 將數據庫恢復到正在運行的 MySQL 服務器。

而不是使用--copy-back使用--export並一次導入每個表空間 這很容易編寫腳本。

xtrabackup --export將創建 .exp、.ibd 和 .cfg 文件。

不,恐怕沒有辦法做你想做的事。

使用該大小的數據庫,您可以使用 mysqldump,然后將數據還原到您想要的位置https://dev.mysql.com/doc/refman/5.7/en/mysqldump.html

這里有一篇文章可能對您有用。 它描述了如何將數據拆分為多個 csv 文件,這比使用 mysqldump 轉儲 SQL 文件和從 SQL 文件恢復要快,尤其是當您可以選擇使用多個線程時。

https://www.percona.com/blog/2018/02/22/restore-mysql-logical-backup-maximum-speed/

與往常一樣,在移動或更改數據時,請在對實時數據使用這些技術之前進行測試。

希望這會有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM