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.: 锁全局

退出 自动释放锁

7.2 Database Backup Methods 数据备份方法:的更多相关文章

  1. MySQL数据备份方法

    MySQL的备份和还原 备份:副本    RAID1,RAID10:保证硬件损坏而不会业务中止:        DROP TABLE mydb.tb1; 备份类型:        热备份.温备份和冷备 ...

  2. Chapter 7 Backup and Recovery 备份和恢复:

    Chapter 7 Backup and Recovery 备份和恢复: Table of Contents 7.1 Backup and Recovery Types 7.2 Database Ba ...

  3. Oracle数据库三种标准的备份方法

    Oracle数据库的三种标准的备份方法: 1.导出/导入(EXP/IMP). 2.热备份. 3.冷备份. 注释:导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一.导出/导入(Export/Imp ...

  4. InfluxDB数据备份和恢复方法,支持本地和远程备份

    本文属于<InfluxDB系列教程>文章系列,该系列共包括以下 17 部分: InfluxDB学习之InfluxDB的基本概念 InfluxDB学习之InfluxDB的基本操作 Influ ...

  5. 【链表】bzoj 1150: [CTSC2007]数据备份Backup

    1150: [CTSC2007]数据备份Backup Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1136  Solved: 458[Submit] ...

  6. bzoj1150 [CTSC2007]数据备份Backup 双向链表+堆

    [CTSC2007]数据备份Backup Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2727  Solved: 1099[Submit][Stat ...

  7. 1150: [CTSC2007]数据备份Backup

    1150: [CTSC2007]数据备份Backup https://lydsy.com/JudgeOnline/problem.php?id=1150 分析: 堆+贪心. 每次选最小的并一定是最优的 ...

  8. oracle中修改表已有数据的某一列的字段类型的方法,数据备份

    1.在开发过程中经常会遇到表中的某一个字段数据类型不对,比如说需要保存的数据带小数,但是在最初设计的时候是给的number(10)类型,开始保存是整数的时候满足要求,后来在保存小数的时候 会发现自动四 ...

  9. 【BZOJ 1150】 1150: [CTSC2007]数据备份Backup (贪心+优先队列+双向链表)

    1150: [CTSC2007]数据备份Backup Description 你在一家 IT 公司为大型写字楼或办公楼(offices)的计算机数据做备份.然而数据备份的工作是枯燥乏味 的,因此你想设 ...

随机推荐

  1. C#构造函数里的base和this的区别

    用法一: 父类的构造函数总是在子类之前执行的.既先初始化静态构造函数,后初始化子类构造函数. public class BaseCircle { public BaseCircle() { Conso ...

  2. MyBatis报错

    1.错误描写叙述 2014-11-2 15:03:11 org.apache.catalina.core.StandardEngine start 信息: Starting Servlet Engin ...

  3. TCP/IP源码(59)——TCP中的三个接收队列

    http://blog.chinaunix.net/uid-23629988-id-3482647.html TCP/IP源码(59)——TCP中的三个接收队列  作者:gfree.wind@gmai ...

  4. Entity Framework CodeFirst------数据迁移(二)

    众所周知当我们的项目涉及到数据库时,随着需求或大或小的 变更后,我们之前设计好的数据模型会发生部分的更改,导致数据表.或者数据字段的增加.修改等,这个时候我们就需要对数据库结构进行修改,如果我们之前采 ...

  5. JDK5-枚举

    1. 使用普通类模拟枚举 public class Weekday { private Weekday() {} // 私有化 public static final Weekday MONDAY = ...

  6. Android(java)学习笔记246:ContentProvider使用之学习ContentProvider(内容提供者)的目的

    1.使用ContentProvider,把应用程序私有的数据暴露给别的应用程序,让别的应用程序完成对自己私有的数据库数据的增删改查的操作. 2.ContentProvider的应用场景: 获取手机系统 ...

  7. 滑动页面,顶部导航or顶部 固定在一个位置

    现在很多页面 特别是电商用的比较多 比如电商里面某个商品的详细页 往下拉页面 当滚轮到达一定位置的时候  导航栏即固定在顶部 其实他的原理很简单, 就是一开始设置导航为相对定位,然后计算出滚动条离顶部 ...

  8. C#实现发送邮件

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  9. (转)PHP中的ob_start用法详解

    用PHP的ob_start();控制您的浏览器cache Output Control 函数可以让你自由控制脚本中数据的输出.它非常地有用,特别是对于:当你想在数据已经输出后,再输出文件头的情况.输出 ...

  10. 高性能IO设计模式之阻塞/非阻塞,同步/异步解析

    提到高性能,我想大家都喜欢这个,今天我们就主要来弄明白在高性能的I/O设计中的几个关键概念,做任何事最重要的第一步就是要把概念弄的清晰无误不是么?在这里就是:阻塞,非阻塞,同步,异步. OK, 现在来 ...