MySQL 备份与恢复

时间:2022-10-11 20:02:06

一、备份/恢复策略

  考虑因素有:

  (A) 表的存储引擎是否事务性的,在数据一致性方面不太一样。

  (B) 确定是全备份还是增量备份,

  (C) 考虑采取复制的方法做异地备份,复制不能代替备份

  (D) 定期做备份,考虑恢复时间和负载。

  (E) 确保打开log-bin选项

  (F) 经常做备份恢复测试,确保备份有效,且可恢复。

二、逻辑备份和恢复

  逻辑备份是将数据库中的数据备份成一个文本文件,备份文件可查看和编辑。使用mysqldump工具做逻辑备份。

  结合备份数据和binlog可以做到全恢复。

三、物理备份和恢复

  速度更快,基于文件的cp。

  (A) 冷备份和恢复:停机拷贝和拷贝开启

  (B) 热备份和恢复:不同引擎不一样

    MyISAM:对要备份的表加读锁,再cp

    InnoDB: 日志重做机制

四、表的导入导出

  导出数据的原因:特定格式显示数据;节省备份空间;加快数据加载速度。

  导出方法2种:

  (A) SELECT ... INTO OUTFILE ... 命令来导出。注意 转义字符、字段分隔符、记录分隔符的转义。

  (B) mysqldump 导出数据为文本。

  导入方法2种:

  (A) LOAD DATA INFILE ... 命令。注意 转义字符、字段分隔符、记录分隔符的转义。

  (B) mysqlimport 导入数据。