MySQL備份-mysqldump

一先建立備份賬號

create user 'backup'@'localhost' identified by 'pass4word';

二賦予權限

grant select,reload,lock tables,replication client,show view,event,process on *.* to 'backup'@'localhost';

附加,查看創建表的語句

show create table table_name;

 三備份單個數據庫

 mysqldump -ubackup -ppass4word --master-data=2 --single-transaction --routines --triggers --events tk_test >tk.sql

 詳解

備份分類

按照是否能繼續提供服務

  • 熱備 :在線備份,能讀能寫.
  • 冷備 :離線備份

按照備份數據庫對象分類

  • 物理備份:直接複製數據庫文件,速度較快
  • 邏輯備份:數據庫sql文件.相比物理備份而言速度較慢

    

按照備份數據量

  • 全量備份
  • 增量備份

 

 備份內容和備份工具

需要備份的內容:文件,二進制日誌,事務日誌,配置文件,操作系統上和MySQL相關的配置

備份工具:

mysqldump:邏輯備份工具.要求MySQL服務在線. MyIsam(溫備,可讀不可寫), InnoDB(熱備,可讀可寫)

cp :冷備份

lvm快照:幾乎熱備.注意點是 ,先flush table,lock table,創建快照,釋放鎖,複製數據.因爲要先flush table 和lock table,這對於MyISAM來說很簡單很容易實現.但對於InnoDB來說,因爲事務的原因,鎖表後可能還有緩存中的數據在寫入文件中,所以應該監控緩存中的數據是否真的已經完全寫入數據文件中,之後才能進行復制數據

xtrabackup:開源 .MyISAM(溫備),InnoDB(熱備),速度較快

語法選項

  • mysqldump [OPTIONS] database_name [tables]   
    mysqldump -ubackup -ppass4word  tk_test2 tk_test >back.sql

     

  • mysqldump [OPTIONS] --databases [OPTIONS]  DB1 [DB2 DB3 ..]

  • mysqldump -ubackup -ppass4word --database  tk_test2 tk_test >back.sql

     

  • mysqldump [OPTIONS] --all-databases [OPTIONS]
    mysqldump -ubackup -ppass4word --all-databases > m2.sql;

     

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章