14.18 InnoDB Backup and Recovery  备份和恢复:

安全数据库管理的关键是 做定期的备份,依赖你的数据卷,

MySQL server的数量和数据库的负载,你可以使用那些技术,单独的或者组合:

使用MySQL  企业版进行热备份; 当关闭Mysql 数据库的时候通过拷贝文件进行冷备份,

物理备份对于快速操作(特别对于恢复)

逻辑备份对于小的数据量或者恢复schema对象的结构

Hot Backups 

mysqlbackup 命令, MySQL 企业备份组件部分,

让你备份运行的MySQL 实例, 包含InnoDB和MyISAM 表,

以最小的中断操作来产生一个一致性数据库快照。

当mysqlbackup  是复制InnoDB 表,读和写在InnoDB和MyISAM 表是可以继续的。

在复制MyISAM表的时候,读(但是不是写) 到那些表是允许的。

MySQL 企业备份可以创建压缩的备份文件,备份表和数据库的子集。

和MySQL的binary log的组合,用户可以执行按时间点恢复。

MySQL Enterprise Backup  是MySQL Enterprise的一部分

Cold Backups 冷备份:

如果你可以关闭你的MySQL server, 你可以做一个binary backup 所有的文件用于管理它的表,使用下面的过

程:

1.
做一个慢的MySQL server 关闭和确保它停止没有报错 2.复制所有的InnoDB 数据文件(ibdata文件和.ibd文件)到一个安全的地方 3.复制所有的.frm 文件对于InnoDB 表到安全的地方 4.复制所有的InnoDB log files(ib_logfile files)到一个安全的地方 5.复制你的my.cnf 配置文件或者文件到安全的地方 选择备份类型: 除了前面描述的2进制备份, 使用mysqldump 定期的进行dump. 一个binary 文件可能会损坏在你没有注意的时候 Dumped tables 是存储在文本文件,它们是人可读的, 因此发现表腐败变的很容易。此外,由于格式更简单, 严重的数据损坏的机会会更小。 mysqldump 也可以有一个 --single-transaction option来做一个一致性快照在不锁定其他的客户端 复制工作,你可以使用MySQL 复制功能来保留你的数据库的拷贝 Performing Recovery 恢复你的InnoDB 数据库到现在从2进制备份的时间点, 你必须让你的MySQL server 的binary logging 打开, 甚至在备份前。 为了完成基于时间点的恢复在恢复一个备份, 你可以应用binary log的改变 在备份完成之后 为了从一个MySQL server的crash 恢复, 唯一的需求时重启它。 InnoDB 会自动的检查logs和执行一个数据库的前滚到现在 InnoDB 自动回滚没有提交的事务, 在crash时 在recovery期间,mysqld 显示输出这样的东西: InnoDB: Database was not shut down normally.
InnoDB: Starting recovery from log files...
InnoDB: Starting log scan based on checkpoint at
InnoDB: log sequence number 0 13674004
InnoDB: Doing recovery: scanned up to log sequence number 0 13739520
InnoDB: Doing recovery: scanned up to log sequence number 0 13805056
InnoDB: Doing recovery: scanned up to log sequence number 0 13870592
InnoDB: Doing recovery: scanned up to log sequence number 0 13936128
...
InnoDB: Doing recovery: scanned up to log sequence number 0 20555264
InnoDB: Doing recovery: scanned up to log sequence number 0 20620800
InnoDB: Doing recovery: scanned up to log sequence number 0 20664692
InnoDB: 1 uncommitted transaction(s) which must be rolled back
InnoDB: Starting rollback of uncommitted transactions
InnoDB: Rolling back trx no 16745
InnoDB: Rolling back of trx no 16745 completed
InnoDB: Rollback of uncommitted transactions completed
InnoDB: Starting an apply batch of log records to the database...
InnoDB: Apply batch completed
InnoDB: Started
mysqld: ready for connections 如果你的数据库变的损坏或者磁盘故障, 你必须使用备份来执行一个recovery. 在腐败的情况下,首先找到一个备份是不损坏的, 在恢复基础备份后,做一个基于时间点的恢复从binary log files 使用 mysqlbinlog和mysql 来恢复在备份后的改变 在某些数据库腐败的情况下,它是足够的只是转储,drop和重建创建一个或者一些腐败的表。 你可以使用CHECK TABLE SQL语句来检查一个表是否是腐败的, 虽然CHECK TABLE 自然的检测每种可能的腐败。 在某些情况下,明显的数据库页腐败实际上由于操作系统腐败它自己的文件cache, 数据在磁盘可能是好的。

14.18 InnoDB Backup and Recovery 备份和恢复:的更多相关文章

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

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

  2. 官方文档 恢复备份指南一 Introduction to Backup and Recovery

    1.备份分为:物理备份和逻辑备份    物理备份:备份数据文件  控制文件  归档日志文件     逻辑备份:EXP EXPDP备份等 物理备份为主,逻辑做补充     2.错误的类型         ...

  3. VMware Data Recovery备份恢复vmware虚拟机

    VMware Data Recovery 是VMware虚拟机备份工具,可创建虚拟机备份,同时不会中断虚拟机的使用或虚拟机提供的数据和服务.Data Recovery 管理现有备份,并在这些备份过时后 ...

  4. insert buffer/change buffer double write buffer,双写 adaptive hash index(AHI) innodb的crash recovery innodb重要参数 innodb监控

    https://yq.aliyun.com/articles/41000 http://blog.itpub.net/22664653/viewspace-1163838/ http://www.cn ...

  5. 14.18.1 The InnoDB Recovery Process InnoDB 恢复进程:

    14.18.1 The InnoDB Recovery Process InnoDB 恢复进程: InnoDB crash recovery 有几个步骤组成: 1.应用redo log,Redo lo ...

  6. Backup &recovery备份和还原

    实践版本:MySQL5.7 备份类型(backup type)物理和逻辑备份(Physical Versus Logical Backup)        物理备份是指直接复制存储数据库内容的目录和文 ...

  7. 7.1 Backup and Recovery Types 备份和恢复类型

    7.1 Backup and Recovery Types 备份和恢复类型 这个章节描述 不同备份类型的特点: 物理(raw)与逻辑备份 物理备份有raw 副本组成,存储数据库内容,这种类型的备份是适 ...

  8. Backup&recovery备份和还原 mysql

    1.mysqldump 在日常工作中,我们会使用mysqldump命令创建sql格式的转储文件来备份数据库.或者我们把数据导出后做数据迁移,主备搭建等操作.mysqldump是一个逻辑备份工具,复制原 ...

  9. centos环境下使用percona-xtrabackup对mysql5.6数据库innodb和myisam进行快速备份及恢复

    centos环境下使用percona-xtrabackup对mysql5.6数据库innodb和myisam进行快速备份及恢复 有时候我们会碰到这样的业务场景: 1.将大的数据库恢复到本地进行业务测试 ...

随机推荐

  1. 抽象工厂模式和autofac的使用总结

    抽象工厂模式和依赖注入的使用目的都是降低对象直接依赖耦合关系,应该说依赖注入是抽象工厂模式的一种升华,功能更强大. 说到抽象工厂的模式,一般都要先解释下简单工厂,简单工厂就是将对象的实例化抽取出来形成 ...

  2. UIBezierPath详解

    使用UIBezierPath类可以创建基于矢量的路径,这个类在UIKit中.此类是Core Graphics框架关于path的一个封装.使用此类可以定义简单的形状,如椭圆或者矩形,或者有多个直线和曲线 ...

  3. python写的屏保程序

    __author__ = 'ChenYan' from random import randint from tkinter import * class Randball(): def __init ...

  4. 【集训笔记】动态规划背包问题【HDOJ1421【HDOJ1058【HDOJ2546

    http://acm.hdu.edu.cn/showproblem.php?pid=2546 http://acm.zju.edu.cn/onlinejudge/showContestProblem. ...

  5. 在SSH整合框架中经常会用到Service层,请问大家这个Service层有什么具体的作用,可不可以不用这个Service层呢?

    有效地分离数据访问层(DAO)和业务层(SERVICE),使之各司其职,举例说明:如果DAO层访问数据库,得到的数据根据业务需要要进行加密,那么取数据和把数据加密就是2个步骤,访问数据和业务逻辑加工, ...

  6. MAC X OS 自定义分辨率

    1 vi /Library/Preferences/SystemConfiguration/com.apple.Boot.plist 2 3 将该文件修改成如下内容: 4 5 <key>G ...

  7. 网站开启gzip的方法

    .如果空间支持Zlib压缩文件,可用php.ini方法 这个方法比较简单,压缩率也较高,可达75%左右.新建一个名为 php.ini 的文件,添加以下代码,保存后上传至网站根目录即可. output_ ...

  8. c#取出LDAP SearchResult所有属性

    string aaa = System.Threading.Thread.CurrentPrincipal.Identity.Name; DirectorySearcher ds = new Dire ...

  9. 利用xshell密钥管理服务器远程登录+VIM dd命令操作之伤之再伤

    1.打开Xshell界面,中文界面方便操作,菜单栏:工具——新建用户密钥生成向导 2.密钥类型选择RSA,密钥长度选择2048位,单击下一步继续: 3.很快生成公钥对,单击下一步继续: 4.密钥名称可 ...

  10. FireMonkey下的异形窗体拖动(句柄转换)

    DelphiXE2 Firemoney FMX 的窗体不只是为windows的, 所以很多功能都没有了. 最常见的就是拖拽了 先看 VCL时代 一个经典拖动代码 ReleaseCapture(); S ...