Percona TokuDB 備份
安裝備份 ps_tokudb_admin --enable-backup 執行安裝程序時,它會去檢測一些項目,但如jemalloc, transparent huge pages..等,這些是在安裝TokuDB引擎時就已設定過的,大致上不會有什麼問題。 要注意的地方是要記得在參數檔的[mysqld_safe]區塊中加入 preload-hotbackup 這個參數,否則安裝時會報錯。 執行備份 set tokudb_backup_dir='/path/to/backup_dir'; 是的,沒看錯,這個看似設定備份路徑的語法就是在執行備份 我個人是覺得有點莫名奇妙啦XDD 它會自動的幫你把資料庫中所有的檔案備份到指定的路徑中 如果你的tokudb有另外放在其他路徑下的話,也分開備份在不同目錄下,如圖所示: 還原 目前只支援用rsync或cp的方式把資料還原回來,要注意的是,還原前切記先把mysqld服務先停止。 經測試,如果是資料移失的那種部份還原的話,還是可以在mysqld服務啟動時,透過rsync的方式把資料還原回來,如下圖: 如果是整個刪除的話,則需要關機還原,然後把每個檔案都還原回去 rsync -avrP /opt/backup/08311600/mysql_data_dir/ /opt/percona57/data/ rsync -avrP /opt/backup/08311600/tokudb_data_dir/ /opt/percona57/tokudb_data/ rsync -avrP /opt/backup/08311600/tokudb_log_dir/ /opt/percona57/tokudb_log/ 如下圖: 錯誤排除 在執行備份時,有可能會發生這個錯誤訊息: ERROR 1231 (42000): Variable 'tokudb_backup_dir' can't be set to the value of '/opt/backup/08311600' 這個有可能是因為備份路徑的權限不足,或是已有檔案存在無法寫入… 可以執行:SELECT @@tokudb_backup_last_error_string;查明錯誤原因