下载备份

如果您的业务场景(例如长期保留备份、备份查询、备份迁移、下载备份用于审计等)需要下载RDS MySQL的备份数据,可参考本文操作。

其他引擎请参见:

下载前必读

下载备份前,请根据您的场景和目的,选择合适的方案。

说明

下载的备份数据无法直接用于恢复到RDS实例,如需恢复实例,请参见数据恢复方案概览

场景和目的

建议

  • 从RDS实例迁移至其他RDS实例或自建数据库

  • 恢复已有的备份

选择以下其中一种方式:

  • 查询过去某个时间点的数据

  • 查询备份里的数据

选择以下其中一种方式:

  • 把备份恢复至按量付费或Serverless实例,查询后释放实例。请参见恢复全量数据

  • 参见本文,下载备份并恢复至自建数据库进行查询。

  • 在本地保存一份备份

  • 下载备份用于审计

选择以下其中一种方式:

  • 把备份上传到您的OSS

RDS备份存放于备份空间,不占用存储空间,如需在您的OSS上存放备份,您可以选择以下其中一种方式:

  • 符合条件的云盘实例可参见本文创建高级下载任务并在任务配置过程中,选择直接将下载的数据写入您的OSS中;其余云盘实例或本地盘实例可参见本文先下载备份,然后再上传到OSS

  • 使用DBS进行备份,并选择存储类型为用户OSS。

  • 长期保留备份

  • 自动下载备份

费用说明

本地盘实例使用备份下载功能将产生外网流量费用,云盘实例使用备份下载功能将产生外网流量费用和备份集转换费用。

流量费用

  • 内网下载:免费。

  • 外网下载:免费额度为500 GB/月/实例,超出免费额度的部分将按量计费,根据下载数据量每天扣费一次。具体费用单价,请参见网络费用

说明
  • 云盘实例的快照备份下载发起后,系统会产生一个数据转换的下载任务,该任务未成功完成时(包括任务进行中及任务失败),无法获取下载链接,该情况下不会产生和收取外网流量费用。任务成功完成后,用户在使用链接下载时按实际产生的流量收费。

  • 本地盘实例的物理备份下载不涉及数据转换,用户可直接获取下载链接,在使用链接下载时按实际产生的流量收费。

  • 查看外网备份已下载量请进入RDS实例列表,单击实例ID,在基本信息页面的使用量统计区域查看备份下载量

  • 建议您购买包年包月的网络包,可以抵扣账号下外网下载备份产生的网络流量费用,网络包容量越大折扣越高。

备份集转换费用

云盘实例使用高级下载功能时,快照备份转换为CSV(不带表头)、CSV-with-header(带表头)、SQL或Parquet文件的费用。无免费额度,计费标准如下:

地域

转换费用(元/GB)

公共云

0.2

金融云/微金融云

0.38

政务云

0.4

说明

云盘实例的快照备份下载发起后,系统会产生一个数据转换的下载任务,该任务失败时不收取备份集转换费用。

下载方法

云盘实例

您可以按任意时间点或按指定备份集创建高级下载任务,并支持选择下载目标为URL或直接将数据写入您的OSS中,后续方便您进行数据分析以及离线归档。

前提条件

  • RDS实例需满足以下条件:

    • MySQL数据库版本:8.0、5.7(支持Serverless实例)

    • 存储类型:ESSD云盘、通用云盘

    说明
    • 您可以前往实例基本信息页面查看以上信息。

    • 已开启数据归档OSS的通用云盘实例暂不支持高级下载功能,下载任务将执行失败。更多详情,请参见通用云盘数据归档功能

  • 实例所在地域(仅支持公共云)为:西南1(成都)、华南3(广州)、华北1(青岛)、华北2(北京)、华北2(上海)、华北3(张家口)、华东1(杭州)、华南1(深圳)、中国香港、马来西亚(吉隆坡)、印度尼西亚(雅加达)、日本(东京)、新加坡、美国(硅谷)、美国(弗吉尼亚)、德国(法兰克福)

    说明

    其余地域将陆续上线。

  • 实例内核小版本必须大于20201031。如何升级内核小版本,请参见升级内核小版本

    重要

    若实例内核小版本符合要求,但控制台仍不支持高级下载功能(实例备份下载按钮无法点击),可能是实例的硬件限制导致。由于部分实例受硬件限制影响不支持高级下载功能,您需要先检查实例是否开通了数据库代理服务,然后通过升级内核小版本来解决。详情如下:

    • 若未开启数据库代理服务,请直接升级内核小版本,成功后前往控制台查看下载按钮支持情况。

    • 若开启了数据库代理服务,由于数据库代理服务功能限制原因,该服务开启的情况下,升级内核小版本操作无法直接解决问题。

      请先关闭数据库代理服务,再升级内核小版本,成功后前往控制台查看下载按钮支持情况。后续请按需重新开启该服务。

  • 备份数据未加密。加密的云盘实例不支持高级下载。

  • RAM账号需要具备下载备份文件的权限。如需为RAM账号授权,请参见添加下载备份文件权限给只读子账号

    RAM账号权限说明

    高级下载功能的鉴权能力依赖于RAM的权限管理,您可以通过RAM为您的账号配置获取下载链接串的权限。

    • 如果您无法正常使用高级下载功能(例如创建、查询高级下载任务),请检查您的RAM账号是否已添加AliyunDBSFullAccess权限。如何授权,请参见为RAM用户授权

    • 如果您的RAM账号需要拥有DBS的使用权限,但需要禁止该RAM账号获取高级下载的下载链接,您可以创建自定义权限策略禁止RAM账号调用获取下载链接串的接口,参考脚本如下:

      {
          "Version": "1",
          "Statement": [
              {
                  "Effect": "Deny",
                  "Action": "dbs:DescribeDownloadBackupsetStorageInfo",
                  "Resource": "*"
              }
          ]
      }

      自定义权限策略创建完成后,请将该自定义权限策略授权到您的RAM账号中。此时,您的RAM账号就会被禁止获取下载链接。

功能限制

  • 本功能支持导出大部分的表结构,部分结构信息暂不支持导出。

    • 支持导出:列信息、主键索引、非主键索引、唯一索引、分区表信息、表引擎、表级别或库级别的字符集与字符排序规则

    • 不支持导出:表达式索引、外键、生成列、隐藏列、视图、函数、存储过程、系统变量、触发器

  • 不支持空间数据类型的字段。当实例包含了以下类型的字段时,转换任务会失败:

    GEOMETRYPOINTLINESTRINGPOLYGONMULTIPOINTMULTILINESTRINGMULTIPOLYGONGEOMETRYCOLLECTION

  • 导出的CSV文件中不包含如下系统库:

    information_schemamysqlperformance_schemasys__recycle_bin__

  • 若选择下载目标为OSS,仅支持存储类型为标准存储。如需转换存储类型,请参见存储类型转换

操作步骤

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 在左侧导航栏中,单击备份恢复

  3. 备份恢复页面中选择基础备份列表 > 数据备份

  4. 单击目标备份集右侧操作列下的实例备份下载

    说明
    • 默认展示近8天内的备份数据,如需查看8天前的备份,请修改时间范围。

    • 如控制台页面没有实例备份下载按钮,请确认您的实例版本或实例所在地域是否满足前提条件

  5. 下载时间点与备份集流程下方,选择按时间点下载按备份集下载,并单击页面左下角的下一步

    说明

    仅支持开启了日志备份的实例选择按时间点下载备份集。如需开启日志备份,具体操作请参见开启或关闭日志备份

  6. 下载实例与库表流程下方,单击页面左下角的下一步

    说明

    默认实例下载

  7. 下载目标与格式流程下方,选择下载目标并完成配置。

    重要
    • 推荐您选择下载目标为OSS,该方式更节省时间。

    • 备份下载任务一旦开始,不可取消。

    下载目标为OSS(推荐)

    说明

    此方式仅将数据直接写入您的OSS中,您可在使用完成后按需自行删除。

    1. 输入目标OSS的Bucket Name和目录前缀。

    2. 选择下载格式

      说明
      • 支持的下载格式为CSV(不带表头)、CSV-with-header(带表头)、SQL、Parquet。

      • 如果您在此之前未授权过访问OSS权限,可按照控制台界面提示单击去授权 > 同意授权。授权成功后,您可返回之前已编辑的高级下载配置界面,如上述操作填写信息即可。

    3. 阅读并勾选相关须知内容,单击完成

    4. 页面自动跳转至备份下载页签。

      等待下载任务状态运行中转变为成功,即表示下载成功,后续您可在OSS目标位置查看使用。

      重要
      • 由于计算转换需要在服务侧竞争计算资源,可能会出现临时资源分配失败而导致下载失败;此外,某些不支持的特殊数据格式也可能导致下载失败。当任务失败时,建议您先尝试重试下载任务或联系DBS技术支持人员。

      • 对于失败的任务,不会产生任何费用。

    下载目标为URL

    说明

    选择URL方式时,服务会将转换的数据存储在DBS内置存储中,此过程不会收取存储费用

    1. 选择下载格式,阅读并勾选相关须知内容,单击完成

      说明

      支持的下载格式为CSV(不带表头)、CSV-with-header(带表头)、SQL、Parquet。

    2. 页面自动跳转至备份下载页签,等待下载任务状态转变为成功后。

      重要
      • 由于计算转换需要在服务侧竞争计算资源,可能会出现临时资源分配失败而导致下载失败;此外,某些不支持的特殊数据格式也可能导致下载失败。当任务失败时,建议您先尝试重试下载任务或联系DBS技术支持人员。

      • 对于失败的任务,不会产生任何费用。

    3. 单击下载目标列下的生成链接

    4. 设置链接有效期并单击生成链接,即可通过生成的内网或外网链接下载备份数据(查看下载方法)。

      重要
      • 您可在下载任务完成后三天内获取下载链接,链接有效期范围可设置为5分钟~1天,默认有效期为2小时。

        完成的任务三天后将过期(下载链接将过期),任务过期后其对应数据会被清理(清理在任务过期后一段时间自动执行)。因此,如有业务需求,请重新发起下载任务获取新的下载链接。

      • 生成的下载链接串请及时保存,避免泄露。

      • 使用一些第三方下载软件下载备份集时可能会产生额外下载流量,从而导致额外计费,建议您谨慎使用。

      • 备份下载将产生备份集转换费用和流量费用。具体详情,请参见费用说明

本地盘实例

前提条件

  • RDS MySQL实例的存储类型需为本地SSD盘

    说明

    您可以前往实例基本信息页面查看以上信息。

  • RAM账号需要具备下载备份文件的权限。如需为RAM账号授权,请参见添加下载备份文件权限给只读子账号

操作步骤

  1. 访问RDS实例列表,在上方选择地域,然后单击目标实例ID。

  2. 在左侧导航栏中,单击备份恢复 > 基础备份列表

  3. 选择数据备份日志备份页签。

  4. 如需查看8天前的备份,请修改时间范围。默认时间范围是近8天。

  5. 单击目标备份右侧操作列的实例备份下载(数据备份)或下载(日志备份)。

  6. 在弹出的对话框中,单击已了解,要下载或复制下载地址通过其他途径下载。

    • 复制内网地址:专有网络的ECS与RDS内网互通时,可以在ECS上通过内网地址下载备份,更快更安全。

    • 复制外网地址:无法内网访问RDS时,可通过外网地址下载备份。

    说明
    • 选中已知晓,下载备份文件,内网流量免费,外网流量收费,通过外网链接下载备份数据时,超出外网下载免费额度后需要支付外网流量费用。更多信息,请参见费用说明

    • 备份下载链接1小时内有效,请您及时下载,避免链接过期。若链接已过期,请重新发起下载任务获取新的下载链接。

    • 已开始的下载任务不受链接有效期影响。

    • 通过内网或外网下载地址下载时,可以参考附录:下载命令

    • 使用内网地址下载时,需要在同地域的专有网络(VPC)中才可下载,在跨地域VPC以及经典网络的服务器端无法下载

    • 日志备份是指本地日志的备份。如需获取本地日志,请参见mysqlbinlog

    • 当实例是高可用系列或三节点版时,主备实例都会生成日志备份,在服务可用性页面可以查看主备实例的编号。

    • 如果用于恢复数据到自建数据库,数据备份的时间点必须在日志备份的时间范围内,且日志备份和数据备份必须属于同一实例,即备份所在实例编号相同。

附录:下载命令

本章节简单介绍常用的下载命令。

说明
  • 如果网络下载速度过低(小于每秒64 KB),可能会导致下载中断的情况,请下载时保持网络状况良好。

  • 如果将备份文件下载到ossfs挂载盘,一般还需要调整ossfs的multipart_size参数,该参数默认支持最大100 GB文件,如果下载的备份集大于100 GB将会下载失败。ossfs概述及参数配置详情请参见ossfsossfs挂载选项说明

  • 推荐使用本文提供的wget、curl等命令下载备份集。如果使用其他第三方工具下载,可能会出现重复下载的情况(即实际下载数据量大于备份集大小),且会因使用外网流量下载而产生超出备份集大小部分的流量费用。

wget

命令:nohup wget -c -t 0 "备份文件下载地址" -O 下载的目标路径及文件名 > 下载输出日志到对应文件 &
示例:nohup wget -c -t 0 "https://example.aliyundoc.com/examplebackup.qp.xb" -O /backup/examplebackup.qp.xb > /tmp/download.log &
各命令代表含义如下:
-t 0:无限重试。
-c:支持断点续传。
-O:下载的目标路径及文件名。
nohup:避免因手误执行复制操作或者终端断开连接,把正在进行的下载中断,且当下载完毕后,之前的进程将会自动退出。

curl

命令:nohup curl -C - --retry 10 "备份文件下载地址" -o 自定义文件名 > 下载输出日志到对应文件 &
示例:nohup curl -C - --retry 10 "https://example.aliyundoc.com/examplebackup.qp.xb" -o backup.qp.xb > /tmp/download.log &
各命令代表含义如下:
--retry 10:任务失败时的重试次数,以上示例表示重试10次。
-C -:支持自动断点续传。
-o:下载的目标路径及文件名。
nohup:避免因手误执行复制操作或者终端断开连接,把正在进行的下载中断,且当下载完毕后,之前的进程将会自动退出。
说明

获取备份文件下载地址的方法,请参见下载方法

相关操作

下载常见问题

RDS数据库备份是否可以上传到OSS?

RDS MySQL云盘实例支持按任意时间点或按指定备份集创建高级下载任务,并支持直接将下载的数据写入您的OSS中。具体操作,请参见本文下载方法。您也可以将RDS MySQL云盘或本地盘的备份先下载到本地,然后再上传到OSS中。更多操作,请参见如何上传大文件到OSS

MySQL备份外网下载,带宽有限制吗?

RDS本身是没有带宽限制的,外网下载备份的速度取决于您服务器的带宽。如果您的服务器带宽有限,那么备份下载的速度可能会受到限制。此外,需要注意的是,通过外网链接下载备份数据时,超出外网下载免费额度后需要支付外网流量费用。更多信息,请参见费用说明

如何使用下载的数据备份和日志备份?

您可以将本地盘实例常规下载的备份文件恢复至自建数据库,具体请参见RDS MySQL物理备份文件恢复到自建数据库RDS MySQL逻辑备份文件恢复到自建数据库

本地盘物理备份默认的qp.xb备份格式能否转为.gz格式?

  • 如果实例已开启恢复库表功能,备份压缩格式必须使用qp.xb,不支持转换格式。

  • 如果实例未开启恢复库表功能,可以通过API(ModifyBackupPolicy - 修改实例备份策略)将备份集压缩格式从qp.xb改成tar.gz。该操作仅涉及备份集压缩方式的变化,不会对实例产生其他影响。

使用云盘实例高级下载的数据恢复到本地MySQL数据库时,执行出现报错ERROR 1148 (42000): The used command is not allowed with this MySQL version,如何处理?

在MySQL上执行查询脚本show variables like 'local_infile';。如果结果是OFF,执行以下语句开启文件导入:set global local_infile = 1;。上述操作完成后,再次执行导入脚本即可成功。

为什么在控制台看到的备份大小与实际下载的备份文件大小不一致?

下载的备份文件经过压缩,一般小于控制台显示的备份大小,您可以恢复后查看数据是否完整,具体恢复操作,请参见RDS MySQL快照备份文件恢复到自建数据库

RDS控制台下载的备份文件是否支持直接恢复至其他阿里云RDS实例中?

当前不支持直接将下载的备份文件恢复至云上实例,您可以先将备份文件恢复至自建数据库中,再通过DTS将自建MySQL迁移至RDS MySQL中或使用mysqldump迁移MySQL数据至RDS中。

正在进行中的备份下载任务能否取消?

备份下载任务一旦开始,不支持取消。