mysql兩種備份方法總結:mysqldump 和 xtrabackup

 

 

mysqldump工具基本使用mysql

    1. mysqldump [OPTIONS] database [tables…]sql

        還原時庫必須存在,不存在須要手動建立bash

    --all-databases: 備份全部庫    
    --databases db1 db2 ...: 備份指定的多個庫,若是使用此命令,恢復時將不用手動建立庫
    --lock-all-tables:請求鎖定全部表以後再備份,對MyISAM、InnoDB、Aria作溫備
    --lock-table: 對正在備份的表加鎖,可是不建議使用,若是其它表被修改,則備份後表與表之間將不一樣步
    --single-transaction: 可以對InnoDB存儲引擎實現熱備;
      啓動一個很大的大事物,基於MOCC能夠保證在事物內的表版本一致
      自動加鎖不須要,再加--lock-table, 能夠實現熱備
備份代碼:
    --events: 備份事件調度器代碼
    --routines: 備份存儲過程和存儲函數
    --triggers:備份觸發器
備份時滾動日誌:
    --flush-logs: 備份前、請求到鎖以後滾動日誌;
      方恢復備份時間點之後的內容
複製時的同步位置標記:主從架構中的,主服務器數據。效果至關於標記一個時間點。
    --master-data=[0|1|2]
    0: 不記錄
    1:記錄爲CHANGE MASTER語句
    2:記錄爲註釋的CHANGE MASTER語句




建立專門用於備份的用戶
MariaDB > GRANT RELOAD,LOCK TABLES,SUPER,REPLICATION CLIENT ON *.* TO 'backup'@'%' IDENTIFIED BY '123456';    
MariaDB > FLUSH PRIVILEGES;


mysqldump  -ubackup -p123456  --single-transaction  --flush-logs --master-data=2 --databases ttt  > /data/backup.sql
相關文章
相關標籤/搜索