Mysql
如何使用大量表加快 xtrabackup 的最後階段?
我有一個 MySQL 5.5 數據庫,其中包含數千個表和繁重的寫入工作量。
我需要使用 xtrabackup 進行線上備份(從生產伺服器創建一個從屬伺服器,停機時間最短),但問題是備份的最後階段(當它發出帶有讀鎖的 FLUSH TABLES 時)需要很長時間才能完成。我懷疑這是因為它複製了數千個 frm 表定義文件。我可以通過任何方式加快這個過程嗎?例如,如果我確定表結構沒有改變?
我還看到 innobackupex 有一個名為 –rsync 的選項,它應該會有所幫助,但現在不推薦使用 innobackupex,並且 xtrabackup 出於某種原因缺少此選項。
任何有助於減少帶讀鎖的刷新表有效的時間段的任何幫助將不勝感激。
為後人解答。Innobackupex
--rsync
成功了。它將鎖定時間減少到幾秒鐘。
有一個
--no-lock
選項,但是如果您沒有可寫的非 InnoDB 表並且您不關心 binlog 位置,則只能使用它。如果您不能使用
--no-lock
,我建議您設置一個副本並從中進行備份。順便說一句,
--rsync
無論如何都不會在這裡提供幫助。