增量备份

Mysql增量备份之Mysqldump & Mylvmbackup

て烟熏妆下的殇ゞ 提交于 2019-12-05 05:12:25
简单介绍 备份类型 备份方式 热备份:备份期间不需要服务停机,业务不受影响; 温备份:备份期间仅允许读的请求; 冷备份:备份期间需要关闭 Mysql 服务或读写请求都不受影响; 完全备份: full backup 备份全部数据集; 增量备份: incrementalbackup 上次完全备份或增量备份以来改变的数据; 差异备份: differentialbackup 上次完全备份以来改变的数据; 完全 + 增量 备份方式恢复用到的备份文件: 完全备份 + 增量备份 + 二进制文件; 完全+差异备份方式恢复用到的备份文件:完全备份+增量备份+二进制文件; 逻辑备份 优点 缺点 逻辑备份可以使用编辑器或文本处理工具进行编辑或查看; 恢复非常简单; 比较灵活; 与存储引擎无关; 有助于避免数据损坏; 逻辑备份可以使用编辑器或文本处理工具进行编辑或查看; 恢复非常简单; 比较灵活; 与存储引擎无关; 有助于避免数据损坏; 物理备份 优点 缺点 备份与恢复数据比较简单; InnoDB 与 MyISAM 的物理备份容易跨平台、操作系统和 Mysql 版本; 恢复速度比较快,不需要重新构建索引; InnoDB 的原始文件会比逻辑备份大得多; 物理备份不是总可以跨平台、操作系统及 Mysql 版本; 文件名大小写敏感和浮点格式有可能会有问题 备份对象: 数据文件、配置文件、代码:存储过程,存储函数

【转载】mysql的三种备份方式

杀马特。学长 韩版系。学妹 提交于 2019-12-04 21:21:01
一、备份的目的 做灾难恢复:对损坏的数据进行恢复和还原 需求改变:因需求改变而需要把数据还原到改变以前 测试:测试新功能是否可用 二、备份需要考虑的问题 可以容忍丢失多长时间的数据; 恢复数据要在多长时间内完; 恢复的时候是否需要持续提供服务; 恢复的对象,是整个库,多个表,还是单个库,单个表。 三、备份的类型 1、根据是否需要数据库离线 冷备(cold backup) :需要关mysql服务,读写请求均不允许状态下进行; 温备(warm backup) : 服务在线,但仅支持读请求,不允许写请求; 热备(hot backup) :备份的同时,业务不受影响。 注: 1、这种类型的备份,取决于业务的需求,而不是备份工具 2、MyISAM不支持热备,InnoDB支持热备,但是需要专门的工具 2、根据要备份的数据集合的范围 完全备份:full backup,备份全部字符集。 增量备份: incremental backup 上次完全备份或增量备份以来改变了的数据,不能单独使用,要借助完全备份,备份的频率取决于数据的更新频率。 差异备份:differential backup 上次完全备份以来改变了的数据。 建议的恢复策略: 完全+增量+二进制日志 完全+差异+二进制日志 3、根据备份数据或文件 物理备份:直接备份数据文件 优点: 备份和恢复操作都比较简单,能够跨mysql的版本,

Mysql备份与恢复

烂漫一生 提交于 2019-12-04 21:03:38
通常数据库备份数据文件、 binlog 日志文件和 my.cnf 配置文件都应在其他地方保存一份甚至多份 仅备份是没有任何意义, 需要在测试环境中做日常恢复演练, 测试备份的可用性, 恢复较比备份更加的重要 备份: 能够有效防止设备故障以及人为误操作带来的数据丢失, 例如:将数据文件保存在远端。 冗余: 数据有多分冗余, 但不等于备份, 只能防止机械故障丢失的数据, 例如: 主备模式、数据库集群。 Mysql逻辑备份与恢复 完整备份与恢复 增量备份与恢复 Mysql物理备份与恢复 完整备份与恢复 增量备份与恢复 toc 数据库备份必须考虑因素 数据的一致性 服务的可用性 数据库备份方式 逻辑备份: 备份 DDL DML DCL 语句, 适用于中小型数据库, 效率相对低下。 mysqldump、mydumper 物理备份: 直接复制数据库文件, 适用于大型数据库环境, 效率相对较高。 xtrabackup、inbackup、cp、tar、lvm snapshot 数据库备份模式 完全备份 增量备份 差异备份 Mysql逻辑备份与恢复 Mysql自带逻辑备份工具 mysqldump , 可以保证数据备份一致性, 以及服务可用性 不管物理备份还是逻辑备份, 必须开启 binlog 日志 mysqldump -h 服务器 -u 用户名 -p 密码 数据库名 > 备份文件.sql -A, -

mysqldump实时增量备份

隐身守侯 提交于 2019-12-03 11:01:29
数据备份策略: ♣ 完全备份:备份所有数据 ♣ 增量备份:备份上次备份后,所有新产生的数据 ♣ 差异备份:备份完全备份后,所有新产生的数据 完全备份(mysqldump) # mkdir /mydata # mysqldump -uroot -p123456 -A > /mydata/alldb.sql (备份所有) # mysqldump -uroot -p123456 db2 > /mydata/db2.sql (备份db2库) # mysqldump -uroot -p123456 db2 t2 > /mydata/db2_t2.sql (备份db2库的t2表) # mysqldump -uroot -p123456 -B db3 db2 > /mydata/twodb.sql (备份 db3,db2库) 来源: https://www.cnblogs.com/jiang-bokeyuan/p/11792355.html

MySQL备份与恢复

本小妞迷上赌 提交于 2019-12-03 04:23:36
博文目录 一、MySQL完全备份与恢复 二、数据库备份类型 三、常见的备份方法 四、数据库完全备份操作 五、MySQL增量备份与恢复 一、MySQL完全备份与恢复 备份的主要目的是灾难恢复,备份还可以测试应用、回滚数据修改、查询历史数据、审计等。 1、数据备份的重要性 在企业中数据的价值至关重要,数据保障了企业业务的正常运行。因此,数据的安全性及数据的可靠性是运维的重中之重,任何数据的丢失都可能对企业产生严重的后果。通常情况下造成数据丢失的原因如下几种: 程序错误 人为操作错误 运算错误 磁盘故障 灾难(火灾、地震)和盗窃 三、常见的备份方法 二、数据库备份类型 1、从物理与逻辑的角度: 数据库备份可以分为物理备份和逻辑备份。物理备份是对数据库操作系统的物理文件(如数据文件、日志文件等)的备份。这种类型的备份适用于在出现问题时需要快速恢复的大型重要数据库。 物理备份又可以分为冷备份(脱机备份)、热备份(联机备份)和温备份。 冷备份:在数据库关闭状态下进行备份操作; 热备份:在数据库处于运行状态时进行备份操作,该备份方法依赖数据库的日志文件; 温备份:数据库锁定表格(不可写入,但可读取)的状态下进行备份; 逻辑备份是对数据库逻辑组件(如表等数据库对象)的备份,表示为逻辑数据库结构(create database、create table语句)和内容(insert语句或分隔文本文件

OpenStack虚拟机快照和增量备份实现

匿名 (未验证) 提交于 2019-12-03 00:42:01
1 快照的概念 一般对快照的理解就是能够将系统还原到某个瞬间,这就是快照的作用。 快照针对要保存的数据分为内存快照和磁盘快照,内存快照就是保存当前内存的数据,磁盘快照就是保存硬盘的数据。 快照针对保存方式又分为内部快照和外部快照。 内部快照:是指快照信息和虚拟机存在同一个qcow2镜像中,使用单个的 qcow2 的文件来保存快照和快照之后的改动。这种快照是 libvirt 的默认行为,现在的支持很完善(创建、回滚和删除),但是只能针对 qcow2 格式的磁盘镜像文件,而且其过程较慢等。 外部快照:是指做快照时原虚拟机的disk将变为readonly的模板镜像,然后会新建一个qcow2文件来记录与原模板镜像的差异数据,外部快照的结果是形成一个qcow2文件链:original <- snap1 <- snap2 <- snap3 2 主流libvirt快照实现介绍 2.1 libvirt的内部快照操作 以下是利用libvirt的virsh工具来创建一些内置快照: 创建虚拟机快照: virsh snapshot-create-as --name test001 --description ‘ abc ‘ instance- 00000001 列出虚拟机的快照: virsh snapshot-list instance- 00000001 查看某个快照信息: virsh snapshot

增量备份、差异备份和完全备份的区别

匿名 (未验证) 提交于 2019-12-02 23:41:02
为什么80%的码农都做不了架构师?>>> 差异备份的定义: 备份自上一次完全备份之后有变化的数据。 增量备份的定义: 备份自上一次备份(包含完全备份、差异备份、增量备份)之后有变化的数据。 增量备份和差异备份的区别: 完全备份: 备份全部选中的文件夹,并不依赖文件的存档属性来确定备份那些文件。(在备份过程中,任何现有的标记都被清除,每个文件都被标记为已备份,换言之,清除存档属性)。 差异备份: 差异备份是针对完全备份:备份上一次的完全备份后发生变化的所有文件。(差异备份过程中,只备份有标记的那些选中的文件和文件夹。它不清除标记,既:备份后不标记为已备份文件,换言之,不清除存档属性)。 增量备份: 增量备份是针对于上一次备份(无论是哪种备份):备份上一次备份后,所有发生变化的文件。(增量备份过程中,只备份有标记的选中的文件和文件夹,它清除标记,既:备份后标记文件,换言之,清除存档属性。) 不同备份类型可以存在一定组合,参考示例如下: 完全备份和差异备份: 在星期一进行完全备份,在星期二至星期五进行差异备份。如果在星期五数据被破坏了,则你只需要还原星期一完全的备份和星期四的差异备份。这种策略备份数据需要较少的时间,但还原数据使用较少的时间。 完全备份和增量备份: 在星期一进行完全备份,在星期二至星期五进行增量备份。如果在星期五数据被破坏了

数据库备份之热备,冷备,温备

匿名 (未验证) 提交于 2019-12-02 22:56:40
备份和恢复 备份类型: 完全备份,部分备份 完全备份:整个数据集 1 部分备份:只备份数据子集,如部分库或表 完全备份、增量备份、差异备份 2增量备份:仅备份最近一次完全备份或增量备份(如果存在增量)以来变化的数据,备份较快,还原复杂 3差异备份:仅备份最近一次完全备份以来变化的数据,备份较慢,还原简单 注意:二进制日志文件不应该与数据文件放在同一磁盘 备份和恢复 冷、温、热备份 冷备:读写操作均不可进行 温备:读操作可执行;但写操作不可执行 热备:读写操作均可执行 MyISAM:温备,不支持热备 InnoDB:都支持 物理和逻辑备份 物理备份:直接复制数据文件进行备份,与存储引擎有关,占用较多的空间,速度快 逻辑备份:从数据库中“导出”数据另存而进行的备份,与存储引擎无关,占用空间少,速度慢,可能丢失精度 备份时需要考虑的因素 温备的持锁多久 备份产生的负载 备份过程的时长 恢复过程的时长 备份什么 数据 二进制日志、InnoDB的事务日志 程序代码(存储过程、函数、触发器、事件调度器) 服务器的配置文件 备份工具 cp, tar等复制归档工具:物理备份工具,适用所有存储引擎;只支持冷备;完全和部分备份 LVM的快照:先加锁,做快照后解锁,几乎热备;借助文件系统工具进行备份 mysqldump:逻辑备份工具,适用所有存储引擎,温备;支持完全或部分备份

mysqldump全量备份+mysqlbinlog增量备份脚本

匿名 (未验证) 提交于 2019-12-02 22:06:11
mysql_mysqldump_backup.sh脚本代码: # Author: laizhiyuan # Date: 20190915 # Desc: Timed online logic backup MySQL By mysqldump cmd #!/bin/bash # 备份目的地IP BACK_DEST_IP=xx.xx.xx.xx # 备份目的地端口 BACK_DEST_PORT=22 # 备份目的地用户 BACK_DEST_USER=root # 目的地备份目录 BACK_DEST_DIR=/opt/backup/mysql/logic/full # 本地备份目录 BACK_DIR=/opt/backup/mysql/logic/full # 脚本工作目录 WORK_DIR=/tmp # mysql工作目录 MYSQL_BASEDIR=/usr/local/mysql # mysqldump命令参数 MYSQLDUMP_HOST=localhost MYSQLDUMP_PORT=3306 MYSQLDUMP_USER=root # 检查目录和环境 function check_mkdir_and_env(){ test ! -d $BACK_DIR && mkdir -p $BACK_DIR || echo "" > /dev/null ssh -p $BACK

mysqlhotcopy + binlog 实现mysql增量备份

匿名 (未验证) 提交于 2019-12-02 22:02:20
为什么80%的码农都做不了架构师?>>> mysqlhotcopy只是简单的缓存写入和文件复制的过程,占用资源和备份速度比mysqldump快很多很多。特别适合大的数据库,它使用LOCK TABLES、FLUSH TABLES和cp或scp来快速备份数据库。它是备份数据库或单个表的最快的途径,只能运行在数据库目录所在的机器上。 [warning] 注意: mysqlhotcopy只支持MyISAM 引擎。[/warning] 1. 安装依赖包 mysqlhotcopy是perl语言写的,因此需要安装perl的连接mysql的驱动: # yum install perl-DBI.x86_64 # yum install perl-DBD-MySQL.x86_64 2 mysqlhotcopy常用参数:  3. 创建记录slave和master信息的表 CREATE TABLE `mysqlhotcopy_log_pos` ( `host` varchar ( 60 ) NOT NULL , `time_stamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP , `log_file` varchar ( 32 ) DEFAULT NULL , `log_pos` int ( 11 )