数据库备份类型

一、热备份 温备份 冷备份

热备份:数据读写不受影响

温备份:仅可以执行读操作

冷备份:离线备份、读写均终止

二、物理备份 逻辑备份

物理备份:复制数据文件

逻辑备份:将数据导出成文本文件

三、完全备份 增量备份 差异备份

完全备份:备份所有数据

增量备份:仅备份上次完全备份或增量备份变化的数据

差异备份:仅备份上次完全备份以来所有变化的数据


  mysqldump是mysql自带的备份工具,它可以实现对MyISAM表的温备份和对innodb表的热备份。但是它的还原速度很慢,在备份小型数据库时,使用很方便。使用mysqldump温备份时应先对数据库进行锁表,使其仅能进行读操作。集体步骤应为:

  1mysql>flush tables with read lock;

  2mysqldump备份 新打开一个连接进行备份,上述锁表只对当前会话有效

  3mysql>unlock tables;

  上述的这些操作,mysqldump命令参数就能完成,mysqldump常用的命令参数:

  #mysqldump -u user -p 

   --all-databases 备份所有数据库,还原时不需要先创建这些数据库

   --lock-all-tables 表示锁定所有表

   --master-data=n  

              n=0 表示不记录日志文件位置

              n=1 表示使用CHANGE MASTER TO的方式记录

              n=2 表示使用CHANGE MASTER TO的方式记录,但默认注释,一般使用n=2

   --flush-logs 执行二进制日志滚动,便于备份二进制日志

   以上为常用参数,

   如果备份表类型均为innodb类型,则可以使用--single-transaction来启动热备,此时就不需要--lock-all-tables来锁定表。