一、MySQL备份方式与备份类型

1.备份的必要性

  再生产环境中,为了防止硬件故障、软件故障、自然灾害、误操作等各种原因导致的数据库数据丢失后能恢复到事故之前的状态,我们需要对数据库进行备份和恢复操作。数据库的备份和恢复是非常重要的工作,数据的备份不是最终目的,数据的恢复才是。

  备份时应该注意的事项:

1.最多能容忍多少数据丢失;

2.恢复数据需要在多长时间内完成;

3.需要恢复那些数据;

4.定期测试备份的可用性并提高恢复操作的效率;

5.备份时的服务器负载;

6.锁定资源的时长;

2.备份的类型

a.按照备份的数据集的范围分类:

  完全备份:整个数据集;

  部分备份:数据集的一部分,比如部分表;

b.按照数据的变化分类;

  完全备份:将整个范围备份;

  增量备份:仅备份自上一次完全备份或增量备份以来变量的那部数据;

  差异备份:仅备份自上一次完全备份以来变量的那部数据;

c.按照操作对象分类;

  物理备份:直接从磁盘复制数据文件进行备份;

  逻辑备份:从数据库导出数据另存在一个或多个文件中,将数据转为具体的SQL语句;

d.按照数据服务备份时的运行状态分类;

  热备:读写操作均可进行的状态下所做的备份;

  温备:可读但不可写状态下进行的备份;

  冷备:读写操作均不可进行的状态下所做的备份;

3.备份策略

  备份策略一般都是全量+差异+binlogs或者全量+增量+binlogs。需要注意到的是,如果需要更完整的备份数据,还需要依靠binlogs(二进制日志)。binlogs是MySQL中最重要的日志之一,它记录了所有的DDL和DML(除了数据查询语句)语句,以事件形式记录。这里强烈建议在生产环境中,将数据与二进制日志分开存放并对二进制日志也做备份。

二、MySQL备份工具 

1.mysqldump:mysql服务自带的备份工具。mysqldump是一个逻辑备份工具,它的本质是将数据库转为可执行SQL脚本。可以用来做完全备份和部分备份,支持InnoDB存储引擎的热备功能,MyISAM存储引擎的温备功能。

2.系统自带的cp/tar工具:这是一种物理备份,这种备份的原理是基于快照实现的,快照(请求一个全局锁),之后立即释放锁,达到几乎热备的效果。需要注意的是不能仅仅只备份数据,要同时备份事务日志,并且要求数据和日志在同一逻辑卷。

3.xtrabackup:由Percona开发的很强大的开源工具,支持对InnoDB做热备,物理备份工具。在下篇博客将具体介绍此工具并做实际演示。

MySQL常用的备份方式与备份工具简介的更多相关文章

  1. Oracle中的数据迁移到Mysql数据库中的方式Navicat premium工具

    1.安装 Navicat premium工具 2.破解 Navicat premium工具 3.连接需要相互迁移的两个库Mysql和Oracle(可以是远程的或者本机的数据库都是可以的) 4.连接上之 ...

  2. mysql的日志及利用mysqldump备份及还原

    日志文件:6类       一般查询日志:log,general_log,log_output       慢查询日志:       错误日志       二进制日志       中继日志       ...

  3. Linux下SVN的三种备份方式

    原文链接:http://blog.csdn.net/windone0109/article/details/4040772 (本文例子基于FreeBSD/Linux实现,windows环境请自己做出相 ...

  4. mysql多种备份方式比较及实现

    Mysql备份 MySQL的备份和还原: 备份:存放为副本-->数据备份 RAID1,RAID10:保证硬件损坏而不会业务中止,不能保证逻辑上的损害 例如:DROP TABLE mydb.tb1 ...

  5. 选择适用才最好 盘点MySQL备份方式

    我们要备份什么? 一般情况下, 我们需要备份的数据分为以下几种 数据 二进制日志, InnoDB事务日志 代码(存储过程.存储函数.触发器.事件调度器) 服务器配置文件 备份工具 这里我们列举出常用的 ...

  6. mysql三种备份方式

    一.备份的目的 做灾难恢复:对损坏的数据进行恢复和还原需求改变:因需求改变而需要把数据还原到改变以前测试:测试新功能是否可用 二.备份需要考虑的问题 可以容忍丢失多长时间的数据:恢复数据要在多长时间内 ...

  7. MySQL中如何选择合适的备份策略和备份工具

    ​数据库备份的重要性毋庸置疑,可以说,它是数据安全的最后一道防线.鉴于此,对于备份,我们通常会做以下要求: 多地部署 对于核心数据库,我们通常有两地三中心的部署要求.对于备份来说,也是如此. 一个备份 ...

  8. 为MySQL选择合适的备份方式

    数据库的备份是极其重要的事情.如果没有备份,遇到下列情况就会抓狂: UPDATE or DELETE whitout where… table was DROPPed accidentally… IN ...

  9. 为MySQL选择合适的备份方式[转]

    原文链接:http://nettedfish.sinaapp.com/blog/2013/05/31/choose-suitable-backup-strategy-for-mysql/ 数据库的备份 ...

随机推荐

  1. 创建 sp

    创建 sharepoint solutions---Empty project--module(跟环境中的网站页面一样) element.xml增加pages url=“site pages” 将ws ...

  2. 在Unity5.6.5f1中使用C#7语法

    备忘,记忆力越来越差了,必需把这种琐碎的东西记下来,以防1年后想再用完全没头绪. 之前试过用C#6语法,但是怎么配置操作的完全没印象了. 首先去这下载扩展 https://bitbucket.org/ ...

  3. mysql常用连接查询

    连接数据库PDO $user = "root"; //数据库连接账号 $pass = "root"; //数据库连接密码 $dbname = "tes ...

  4. 说说Runnable与Callable

    Callable接口: public interface Callable<V> { V call() throws Exception; } Runnable接口: public int ...

  5. CentOS No manual entry for man 没有 xx 的手册页条目

    yum install -y man man-pages man-pages-overrides https://unix.stackexchange.com/questions/182500/no- ...

  6. JAVA学习路线——匹马行天下

  7. 排序算法系列:选择排序算法JAVA版(靠谱、清晰、真实、可用、不罗嗦版)

    在网上搜索算法的博客,发现一个比较悲剧的现象非常普遍: 原理讲不清,混乱 啰嗦 图和文对不上 不可用,甚至代码还出错 我总结一个清晰不罗嗦版: 原理: 从数组头元素索引i开始,寻找后面最小的值(比i位 ...

  8. js按钮 防重复提交

    给html 按钮加id属性   例: <button id="addBtn"  onclinck="check()">  </button&g ...

  9. Java内部类持有外部类的引用详细分析与解决方案

    在Java中内部类的定义与使用一般为成员内部类与匿名内部类,他们的对象都会隐式持有外部类对象的引用,影响外部类对象的回收. GC只会回收没有被引用或者根集不可到达的对象(取决于GC算法),内部类在生命 ...

  10. Python内置常量

    引言 Python内置的常量不多,只有6个,分别是True.False.None.NotImplemented.Ellipsis.__debug__. 一. True 1. True是bool类型用来 ...