进行数据库增量备份之前,需要做(数据库海量备份)备份?

备份恢复功能主要用于快速的将集群快照备份到远端存储上,并且在需要的时候可以快速的从备份的数据中恢复。

不同于 功能,备份功能是直接将数据文件拷贝到远端存储上,因此从整体速度上说优于导出功能,但备份的数据只能用于 Doris 自身的恢复功能,而导出的数据可以被其他系统读取和利用。

  1. 在进行备份恢复操作前,用户需要先创建一个仓库(Repository)。仓库是一个远端存储系统上的目录在 Doris 中的映射。备份操作会将数据上传到这个路径中,而恢复操作则是从这个路径中下载数据。

    Doris 支持创建和删除仓库。具体帮助可参阅 以及 命令手册。通过 命令可以查看已经创建好的仓库。

  2. 备份操作可以以最小分区粒度,直接以 Doris 存储的文件的形式,上传到远端仓库中进行存储。当用户提交 Backup 请求后,系统内部会做如下操作:

    1. 快照阶段会对指定的表或分区数据文件进行快照。之后,备份都是对快照进行操作。在快照之后,对表进行的更改、导入等操作都不再影响备份的结果。快照只是对当前数据文件产生一个硬链,耗时很少。快照完成后,会开始对这些快照文件进行逐一上传。快照上传由各个 Compute Node 节点并发完成。

    2. 数据文件快照上传完成后,Leader Node 节点会首先将对应元数据写成本地文件,然后将本地元数据文件上传到远端仓库。完成最终备份作业。

    关于备份的具体操作,可以参阅 BACKUP 语法手册。备份操作是一个异步操作,可以通过 命令查看操作进度。同时,可以通过 命令取消一个正在运行的备份操作。

  3. 恢复操作需要指定一个远端仓库中已存在的备份,然后将这个备份的内容恢复到本地集群中。当用户提交 Restore 请求后,系统内部会做如下操作:

    1. 在本地创建对应的元数据

      这一步首先会在本地集群中,创建恢复对应的表分区等结构。创建完成后,该表可见,但是不可访问。

    2. 下载远端仓库中的快照文件到各自对应的 Compute Node 节点上。

    3. 快照下载完成后,我们要将各个快照映射为当前本地表的元数据。然后重新加载这些快照,使之生效,完成最终的恢复作业。

    关于恢复的具体操作,可以参阅 语法手册。恢复操作是一个异步操作,可以通过 SHOW-RESTORE 命令查看操作进度。同时,可以通过 命令取消一个正在运行的恢复操作。

我们通过一个完整示例展示如果通过备份恢复操作,将 A 集群的数据迁移至 B 集群。

  1. 创建一个名为 bos_repo 的仓库,指向 doris_backup 目录。更多详细帮助,请参阅 。

  2. 在 A 集群进行备份数据操作

    备份操作是一个异步命令,具体进度须通过 命令查看。当返回结果中的 State 字段为 FINISHED,即表示备份完成。

  3. 在 B 集群创建相同的仓库:

  4. 在 B 集群查看仓库中的备份快照

    更多帮助,可以查看 语法手册。

  5. 在 B 集群执行恢复数据操作

    指定 bos_repo 中名称为 snapshot1 的备份数据,选择恢复其中的 example_tbl2 表。每个备份数据都有一个时间戳(backup_timestamp),需要显示指定。同时这里我们指定只恢复一个副本。

    恢复操作也是一个异步命令,具体进度须通过 命令查看。当返回结果中的 State 字段为 FINISHED,即表示恢复完成。

当前我们支持最小分区(Partition)粒度的全量备份。如果需要对数据进行定期备份,首先需要在建表时,合理的规划表的分区及分桶,比如按时间进行分区。然后在之后的运行过程中,按照分区粒度进行定期的数据备份。

通过按分区粒度进行备份,可以起到增量备份的目的。

用户可以先将数据备份到远端仓库,再通过远端仓库将数据恢复到另一个集群,完成数据迁移。因为数据备份是通过快照的形式完成的,所以,在备份作业的快照阶段之后的新的导入数据,是不会备份的。因此,在快照完成后,到恢复作业完成这期间,在原集群上导入的数据,都需要在新集群上同样导入一遍。

建议在迁移完成后,对新旧两个集群并行导入一段时间。完成数据和业务正确性校验后,再将业务迁移到新的集群。

}

· 繁杂信息太多,你要学会辨别

增量同步和全量同步是数据库同步的两种方式。全量同步是一次性同步全部数据,增量同步则只同步两个数据库不同的部分。

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。


· 英方,让世界早有准备!

全量备份是指对某一时间点上的所有数据进行全量备份,包括系统和所有数据。这种备份方式每次都需要对系统和所有数据进行一次全量备份。如上,如果两次备份之间数据没有任何变化,那么两次备份的数据是一样的。也就是说100GB的数据即使没有发生任何数据变化,也会多耗费100GB的存储空间去做备份。但这种备份方式最大的好处就是在恢复丢失数据时,只需要对一个完整的备份进行操作就能够恢复丢失数据,大大加快了系统或数据恢复的时间。
增量备份即在第一次全量备份的基础上,分别记录每次的变化。由于增量备份在备份前会判断数据是否发生变化,并仅记录每次变化情况,所以相较于其他两种备份方式它最大的好处在于其所需存储空间最少的(相同的变化情况下),备份速度最快的。当然在数据还原上来说,它的恢复时间是最长的,效率较低。恢复数据时,需要在第一次完备的基础上,整合每次的一个变化情况。


· 坚果云是一款专注于办公人群需求的网盘产品

中国第一批提供文件云存储服务的公司,专注于云存储技术的研究与应用。一直以来,公司核心产品“坚果云”,着力于办公效率的提升和服务的安全稳定,为全国数百万用户、数百家企业提供文件存储服务。

数据如果保留多份,就会存在一致性问题,就需要同步,同步分为两大类:全量和增量
数据如果要保留副本,要么同时写(就是多写),或者进行复制:异步写(即从主数据拷贝到副本);
同时写(多写),引出一个问题,写多少节点算成功(场景:分布式系统)?全部写成功才算成功,还是写大多数成功算成功,还是写指定几个节点算成功?
异步写的话,如果采用异步复制,那么实时性需要考量的话,就需要采用性能优先的架构。
数据同步一般分为两种方式:全量和增量。
全量,这个很好理解。就是每天定时或者周期性全量把数据从一个地方拷贝到另外一个地方;
全量的话,可以采用直接全部覆盖(使用“新”数据覆盖“旧”数据);或者走更新逻辑(覆盖前判断下,如果新旧不一致,就更新);
这里面有一个隐藏的问题:如果采用异步写,主数据物理删除了,怎么直接通过全量数据同步?这就需要借助一些中间操作日志文件,或者其他手段,把这些“看不到”的数据记录起来。
3.2 增量(类如有;坚果云网盘增量同步功能)
增量的基础是全量,就是你要使用某种方式先把全量数据拷贝过来,然后再采用增量方式同步更新。
增量的话,就是指抓取某个时刻(更新时间)或者检查点(checkpoint)以后的数据来同步,不是无规律的全量同步。这里引入一个关键性的前提:副本一端要记录或者知道(通过查询更新日志或者订阅更新)哪些更新了。

下载百度知道APP,抢鲜体验

使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。

}

 随着互联网高速发展,数据安全的重要性日趋明显。数据备份是企业应对系统故障的重要手段。数据备份可以提高系统的高可用性和灾难可恢复性,使用备份还原数据是系统崩溃时提供数据恢复最小代价的最优方案。

 一、云数据库备份方案

 使用 COS 应用集成备份

 COS 应用集成是腾讯云对象存储 COS 基于 Serverless 云函数,为开发者提供的存储数据应用解决方案。开发者只需要在 COS 控制台一键配置,即可使用丰富的功能。

 COS 应用集成提供了云数据库备份的能力,开发者可以轻松配置定时备份任务,将云数据库上的备份文件转存至对象存储进行持久化的保存,在数据库上的数据丢失或损坏时,开发者可以通过备份文件快速恢复数据。

 存储成本低:相对于数据库存储费用,对象存储更低;

 可视化操作:一键配置,简化开发流程,无需编码工作;

 自定义备份周期:支持 Cron 语法,可根据需要自由配置备份周期;

 自动化执行:云函数自动完成云数据库 MySQL/SQL Server 数据备份,中间过程无需任何人工操作。

 云数据库 MySQL(TencentDB for MySQL)是一种稳定可靠、可弹性扩展和便于管理的关系型数据库服务。云数据库 MySQL 提供备份恢复、监控、容灾、快速扩容、数据传输等全套解决方案,为您简化数据库运维工作,使您能更加专注于业务发展。

 云数据库 SQL Server(TencentDB for SQL Server)具有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩容等特点,同时也具备高可用架构、数据安全保障和故障秒级恢复功能,让您能专注于应用程序的开发。

 四、备份任务设置步骤

 1. 登录腾讯云 COS 对象存储控制台。

 2. 在左侧导航中,单击【应用集成】,找到【MySQL 数据备份】。

 3. 单击【配置备份规则】,进入规则配置页面。

 4. 单击【添加函数】。注意:如果您尚未开通云函数服务,请前往云函数控制台开通云函数服务,按照提示完成服务授权即可。

 5. 在弹出的窗口中,配置如下信息:

 函数名称:作为函数的唯一标识名称,创建后不可修改。您可以在 云函数控制台 上查看该函数。

 关联存储桶:存储 MySQL 备份文件的存储桶。

 触发器周期:MySQL 数据备份函数通过定时触发器来触发备份转存操作,触发周期支持每天、每周及自定义周期。

 Cron 表达式:当触发器周期设置为自定义时,可通过 Cron 指定具体的触发周期规则。Cron 当前以 UTC +8 中国标准时间(China Standard Time)运行,即北京时间。详细配置策略请参见 Cron 相关文档。

 数据库实例:当前存储桶所在地域的 MySQL 数据库实例列表。

 投递路径:备份文件的投递路径前缀,不填写则默认保存在存储桶根路径。

 SCF 授权:MySQL 数据备份需要授权云函数从您的 MySQL 备份中读取数据库实例及其备份文件,并将备份文件转存至您指定的存储桶中。因此需要添加此授权。

 6. 添加配置后,单击【确认】,即可看到函数已添加完成。

 您可以对新创建的函数进行如下操作:单击【查看日志】,查看 MySQL 数据备份的历史运行情况。当备份出现报错时,您还可以通过单击【查看日志】,快速跳转到云函数控制台查看日志错误详情。

 7. 当备份任务执行后,会可以刚才配置的 mysqlbackup/ 目录下找到生成的备份文件。

 五、用备份文件恢复数据库

 (一)MySQL 备份恢复

 云数据库 MySQL 的物理备份和逻辑备份文件,都会先经过 qpress 压缩,后经过 xbstream 打包(xbstream 为 Percona 的一种打包/解包工具)进行压缩与打包。所以我们可以看到导出到存储桶的备份文件是 .xb 后缀的文件。

 如果要对导出的这份 .xb 文件用来恢复数据库,可以使用开源软件 Percona Xtrabackup 对数据库进行备份恢复。

 SQL Server 导出的备份文件是 .bak.tar 格式,tar 解压后得到的 .bak 文件可以用于本地部署的 SQL Server 数据库恢复,也可以在腾讯云数据库控制台的 SQL Server 实例的“备份恢复”上传并导入恢复数据。

}

我要回帖

更多关于 数据库自动备份设置 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信