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;查明錯誤原因

留言

這個網誌中的熱門文章

【工作筆記】SQL Timeout追蹤

MySQL監控軟體MEM及PMM介紹

MySQL Router 設定檔說明