7.2 Database Backup Methods 数据备份方法:

本节总结了一些常用的备份方法:

使用MySQL Enterprise Backup 进行Hot Backup

 MySQL Enterprise Edition 的用户可以使用  MySQL Enterprise Backup 产品来物理备份整个实例或者选择的数据库,表

整个产品包含功能用于增量和压缩备份。

备份物理数据库文件让恢复变的更快相比逻辑技术 比如mysqldump命令。

InnoDB 表是复制使用一个hot backup mechanism.(理想情况下,InnoDB 表应该代表了相当多数的数据)

mysqldump 或者mysqlhotcopy 备份:

mysqldump程序和mysqlhotcopy脚本可以进行备份, mysqldump 是更加常用的因为他可以备份所有类型的表。

mysqlhotcopy 只能用于一些存储引擎

对于InnoDB表, 他是可以执行一个在线备份 不加锁在表上使用--single-transaction option来进行mysqldump

通过 复制表文件进行备份:

对于存储引擎每个表使用它自己的文件,表可以通过copy那些文件备份。

比如,MyISAM 表是存在为文件,因此它可以容易的备份通过复制文件(*.frm, *.MYD, and *.MYI files). 

得到一个一致性备份,停止server 或者lock and flush 相关的表

FLUSH TABLES tbl_list WITH READ LOCK;

你需要一个read lock,这个让其他的客户端可以继续查询表当你做文件的备份。

flush 是需要的确保所有的活动的index pages 是写入到磁盘在你开始备份前

你也可以创建一个 binary backup  通过复制所有的表文件, 只要服务器不更新任何东西。

mysqlhotcopy  脚本使用这种方法(但是注意 表文件复制方法不能工作如果你的数据库包含InnoDB表。

mysqlhotcopy不能用于InnoDB表 因为InnoDB 不需要存储表内容在数据库目的

通过启用Binary log 进行增量备份

MySQL 支持增量备份:你需要启动server 使用--log-bin选项来启用binary logging.

binary log 文件提供了你需要的信息来复制改变到数据库

使用复制slaves进行备份:

如果 你的master 在你备份的时候有性能问题,一种方法是设置复制 执行备份在slave上相比在master上

FLUSH TABLES WITH READ LOCK.: 锁全局

退出 自动释放锁

最新文章

  1. 使用SuperSlide 实现标签切换
  2. css随记01编辑技巧,背景与边框
  3. 读取并创建excel文件(.xls)
  4. SAM4E单片机之旅——20、DMAC之使用Multi-buffer进行内存拷贝
  5. 安装hadoop2.4.0遇到的问题
  6. kakfa源代码开发环境搭建过程中的错误处理
  7. 【Latex】如何在Latex中插入伪代码 —— clrscode3e
  8. 第二个C语言代码
  9. 基于C#的SolidWorks插件开发(2)--创建插件
  10. android 在activity中改变标题栏的标题 tabActivity的标题改变
  11. Git (1)
  12. 关于mysql binlog日志的格式说明
  13. jquery插件推荐
  14. 简单理解java中timer的schedule和scheduleAtFixedRate方法的区别
  15. Android: Only the original thread that created a view hierarchy can touch its views 异常
  16. iptables.sh 初始化防火墙配置
  17. 深度学习识别CIFAR10:pytorch训练LeNet、AlexNet、VGG19实现及比较(二)
  18. java——什么是浅表副本
  19. 修改当前会话的sql_mode
  20. 【UOJ 351】新年的叶子

热门文章

  1. XMPPFrameWork IOS 开发(二)- xcode配置
  2. linux下ssh免密登陆
  3. [ArcGIS所需的补丁]ArcGIS 10.2.2 for Desktop联系Oracle(2014年10上个月发布)数据库崩溃
  4. When does layoutSubviews get called?
  5. JSON和JSONP区别
  6. ASP.NET几种清除页面缓存的方法
  7. WearableListView的使用和一些思考
  8. asp.net 读取sql存储过程返回值
  9. 判断iPhone和iPad 判断设备版本
  10. 用css样式,为表格加入边框