将自动备份复制到其他 AWS 区域 - Amazon Relational Database Service
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

将自动备份复制到其他 AWS 区域

要添加灾难恢复功能,您可以将 Amazon RDS 数据库实例配置为将快照和事务日志复制到所选的目标 AWS 区域。为数据库实例配置备份复制时,RDS 会在数据库实例上的所有快照和事务日志准备就绪后立刻启动跨区域副本。

数据库快照副本需支付数据传输费用。复制数据库快照后,将为目标区域的存储量收取标准费用。有关更多详细信息,请参阅 RDS 定价

备份复制适用于运行以下数据库引擎的 RDS 数据库实例。

  • Oracle 版本 12.1.0.2.v10 和更高版本

  • PostgreSQL 版本 9.6 和更高版本

加密数据库实例不支持进行备份复制。

启用跨区域自动备份

您可以使用 Amazon RDS 控制台对新的或现有的数据库实例启用备份复制。您还可以使用 start-db-instance-automated-backups-replication AWS CLI 命令或 StartDBInstanceAutomatedBackupsReplication RDS API 操作。

注意

为了能够复制自动备份,请确保启用它们。有关更多信息,请参阅 启用自动备份

您可以使用 describe-source-regions CLI 命令列出可将自动备份复制到特定目标区域的源 AWS 区域。有关更多信息,请参阅 查找有关复制备份的信息

您可以为新的或现有的数据库实例启用备份复制:

  • 对于新的数据库实例,请在启动实例时将其启用。有关更多信息,请参阅 数据库实例的设置

  • 对于现有数据库实例,请按以下流程操作。

如欲为现有数据库实例启用备份复制

  1. 登录 AWS 管理控制台 并通过以下网址打开 Amazon RDS 控制台:https://console.amazonaws.cn/rds/

  2. 在导航窗格中,选择 Automated backups (自动备份)

  3. 当前区域选项卡上,选择要为其启用备份复制的数据库实例。

  4. 对于操作,选择管理跨区域复制

  5. 备份复制下,选择启用复制到其他 AWS 区域

  6. 选择目标区域

  7. 选择复制备份保留期

  8. 选择 Save

在源区域中,复制备份在自动备份页面的当前区域选项卡上列出。在目标区域中,复制备份在自动备份页面的复制备份选项卡上列出。

使用 start-db-instance-automated-backups-replication AWS CLI 命令启用备份复制。

以下 CLI 示例将数据库实例的自动备份从 美国西部(俄勒冈)区域 复制到 美国东部(弗吉尼亚北部)地区 中。

如欲启用备份复制

  • 运行以下命令之一。

    对于 Linux、macOS 或 Unix:

    aws rds start-db-instance-automated-backups-replication \ --region us-east-1 \ --source-db-instance-arn "arn:aws-cn:rds:us-west-2:123456789012:db:mydatabase" \ --backup-retention-period 7

    对于 Windows:

    aws rds start-db-instance-automated-backups-replication ^ --region us-east-1 ^ --source-db-instance-arn "arn:aws-cn:rds:us-west-2:123456789012:db:mydatabase" ^ --backup-retention-period 7

使用带以下参数的 StartDBInstanceAutomatedBackupsReplication RDS API 操作来启用备份复制:

  • Region

  • SourceDBInstanceArn

  • BackupRetentionPeriod

查找有关复制备份的信息

您可以使用以下 CLI 命令查找有关复制备份的信息:

以下 describe-source-regions 示例列出了其中的自动备份可以复制到 美国西部(俄勒冈) 目标区域的源 AWS 区域。

如欲显示有关源区域的信息

  • 运行以下命令。

    aws rds describe-source-regions --region us-west-2

输出显示备份可以从 亚太区域(东京) 而不能从 亚太区域(首尔) 复制到 美国西部(俄勒冈) 中。

{ "SourceRegions": [ { "RegionName": "ap-northeast-1", "Endpoint": "https://rds.ap-northeast-1.amazonaws.com", "Status": "available", "SupportsDBInstanceAutomatedBackupsReplication": true }, { "RegionName": "ap-northeast-2", "Endpoint": "https://rds.ap-northeast-2.amazonaws.com", "Status": "available", "SupportsDBInstanceAutomatedBackupsReplication": false } ... ] }

以下 describe-db-instances 示例显示了数据库实例的自动备份。

如欲显示数据库实例的复制备份

  • 运行以下命令之一。

    对于 Linux、macOS 或 Unix:

    aws rds describe-db-instances \ --db-instance-identifier mydatabase

    对于 Windows:

    aws rds describe-db-instances ^ --db-instance-identifier mydatabase

输出包括复制备份。

{ "DBInstances": [ { "StorageEncrypted": false, "Endpoint": { "HostedZoneId": "Z1PVIF0B656C1W", "Port": 1521, ... "BackupRetentionPeriod": 7, "DBInstanceAutomatedBackupsReplications": [{"DBInstanceAutomatedBackupsArn": "arn:aws-cn:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"}] } ] }

以下 describe-db-instance-automated-backups 示例显示了数据库实例的自动备份。

如欲显示数据库实例的自动备份

  • 运行以下命令之一。

    对于 Linux、macOS 或 Unix:

    aws rds describe-db-instance-automated-backups \ --db-instance-identifier mydatabase

    对于 Windows:

    aws rds describe-db-instance-automated-backups ^ --db-instance-identifier mydatabase

输出显示了 美国西部(俄勒冈) 中的源数据库实例和自动备份,且备份已复制到 美国东部(弗吉尼亚北部)。

{ "DBInstanceAutomatedBackups": [ { "DBInstanceArn": "arn:aws-cn:rds:us-west-2:868710585169:db:mydatabase", "DbiResourceId": "db-L2IJCEXJP7XQ7HOJ4SIEXAMPLE", "DBInstanceAutomatedBackupsArn": "arn:aws-cn:rds:us-west-2:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE", "BackupRetentionPeriod": 7, "DBInstanceAutomatedBackupsReplications": [{"DBInstanceAutomatedBackupsArn": "arn:aws-cn:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"}] "Region": "us-west-2", "DBInstanceIdentifier": "mydatabase", "RestoreWindow": { "EarliestTime": "2020-10-26T01:09:07Z", "LatestTime": "2020-10-31T19:09:53Z", } ... } ] }

以下 describe-db-instance-automated-backups 示例使用 --db-instance-automated-backups-arn 选项来显示目标区域中的复制备份。

如欲显示复制备份

  • 运行以下命令之一。

    对于 Linux、macOS 或 Unix:

    aws rds describe-db-instance-automated-backups \ --db-instance-automated-backups-arn "arn:aws-cn:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"

    对于 Windows:

    aws rds describe-db-instance-automated-backups ^ --db-instance-automated-backups-arn "arn:aws-cn:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"

输出显示了 美国西部(俄勒冈) 中的源数据库实例,以及 美国东部(弗吉尼亚北部) 中的复制备份。

{ "DBInstanceAutomatedBackups": [ { "DBInstanceArn": "arn:aws:rds:us-west-2:868710585169:db:mydatabase", "DbiResourceId": "db-L2IJCEXJP7XQ7HOJ4SIEXAMPLE", "DBInstanceAutomatedBackupsArn": "arn:aws:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE", "Region": "us-west-2", "DBInstanceIdentifier": "mydatabase", "RestoreWindow": { "EarliestTime": "2020-10-26T01:09:07Z", "LatestTime": "2020-10-31T19:01:23Z" }, "AllocatedStorage": 50, "BackupRetentionPeriod": 7, "Status": "replicating", "Port": 1521, ... } ] }

从复制备份还原到指定时间

您可以使用 Amazon RDS 控制台将数据库实例从复制备份还原到特定时间点。您还可以使用 restore-db-instance-to-point-in-time AWS CLI 命令或 RestoreDbInstanceToPointInTime RDS API 操作。

有关时间点恢复 (PITR) 的一般信息,请参阅 将数据库实例还原至指定时间

将数据库实例从复制备份还原到指定时间

  1. 登录 AWS 管理控制台 并通过以下网址打开 Amazon RDS 控制台:https://console.amazonaws.cn/rds/

  2. 从区域选择器中选择目标区域(备份复制到其中的区域)。

  3. 在导航窗格中,选择 Automated backups (自动备份)

  4. 复制备份选项卡上,选择要还原的数据库实例。

  5. 对于 Actions (操作),选择 Restore to point in time (还原到时间点)

  6. 选择最近可还原时间以还原到可能的最近时间,或选择自定义来选择时间。

    如果您选择自定义,请输入要将实例还原到的日期和时间。

    注意

    时间以您的本地时区显示,表示为协调世界时 (UTC) 的偏移量。例如,UTC-5 是东部标准时间/中部夏令时。

  7. 对于数据库实例标识符,请输入目标还原后的数据库实例的名称。

  8. (可选)根据需要选择其他选项,例如启用自动扩展。

  9. 选择还原到时间点

使用命令 restore-db-instance-to-point-in-time AWS CLI 创建新的数据库实例。

将数据库实例从复制备份还原到指定时间

  • 运行以下命令之一。

    对于 Linux、macOS 或 Unix:

    aws rds restore-db-instance-to-point-in-time \ --source-db-instance-automated-backups-arn "arn:aws-cn:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE" \ --target-db-instance-identifier mytargetdbinstance \ --restore-time 2020-10-14T23:45:00.000Z

    对于 Windows:

    aws rds restore-db-instance-to-point-in-time ^ --source-db-instance-automated-backups-arn "arn:aws-cn:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE" ^ --target-db-instance-identifier mytargetdbinstance ^ --restore-time 2020-10-14T23:45:00.000Z

要将数据库实例还原到指定时间,请结合以下参数调用 RestoreDBInstanceToPointInTime Amazon RDS 操作:

  • SourceDBInstanceAutomatedBackupsArn

  • TargetDBInstanceIdentifier

  • RestoreTime

停止自动备份复制

您可以使用 Amazon RDS 控制台停止数据库实例的备份复制。您还可以使用 stop-db-instance-automated-backups-replication AWS CLI 命令或 StopDbInstanceAutomatedBackupsReplication RDS API 操作。

复制备份已保留,但受创建时设置的备份保留期的限制。

从源区域的自动备份页面停止备份复制。

如欲停止向 AWS 区域的备份复制

  1. 登录 AWS 管理控制台 并通过以下网址打开 Amazon RDS 控制台:https://console.amazonaws.cn/rds/

  2. 区域选择器中选择源区域。

  3. 在导航窗格中,选择 Automated backups (自动备份)

  4. 当前区域选项卡上,选择要停止备份复制的数据库实例。

  5. 对于操作,选择管理跨区域复制

  6. 备份复制下,清除启用复制到其他 AWS 区域复选框。

  7. 选择 Save

在目标区域中,复制备份在自动备份页面的保留选项卡上列出。

使用 stop-db-instance-automated-backups-replication AWS CLI 命令停止备份复制。

以下 CLI 示例停止在 美国西部(俄勒冈) 区域中复制数据库实例的自动备份。

如欲停止备份复制

  • 运行以下命令之一。

    对于 Linux、macOS 或 Unix:

    aws rds stop-db-instance-automated-backups-replication \ --region us-east-1 \ --source-db-instance-arn "arn:aws-cn:rds:us-west-2:123456789012:db:mydatabase"

    对于 Windows:

    aws rds stop-db-instance-automated-backups-replication ^ --region us-east-1 ^ --source-db-instance-arn "arn:aws-cn:rds:us-west-2:123456789012:db:mydatabase"

使用带以下参数的 StopDbInstanceAutomatedBackupsReplication RDS API 操作停止备份复制:

  • Region

  • SourceDBInstanceArn

删除复制备份

您可以使用 Amazon RDS 控制台删除数据库实例的复制备份。您还可以使用 delete-db-instance-automated-backups AWS CLI 命令或 DeleteDbInstanceAutomatedBackups RDS API 操作。

自动备份页面中删除目标区域中的复制备份。

如欲删除复制备份

  1. 登录 AWS 管理控制台 并通过以下网址打开 Amazon RDS 控制台:https://console.amazonaws.cn/rds/

  2. 区域选择器中选择目标区域。

  3. 在导航窗格中,选择 Automated backups (自动备份)

  4. 复制备份选项卡上,选择要删除其复制备份的数据库实例。

  5. 对于 Actions,选择 Delete

  6. 在确认页面上,输入 delete me 并选择 Delete (删除)

使用 delete-db-instance-automated-backup AWS CLI 命令删除复制备份。

您可以使用 describe-db-instances CLI 命令查找复制备份的 Amazon 资源名称 (ARN)。有关更多信息,请参阅 查找有关复制备份的信息

如欲删除复制备份

  • 运行以下命令之一。

    对于 Linux、macOS 或 Unix:

    aws rds delete-db-instance-automated-backup \ --db-instance-automated-backups-arn "arn:aws-cn:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"

    对于 Windows:

    aws rds delete-db-instance-automated-backup ^ --db-instance-automated-backups-arn "arn:aws-cn:rds:us-east-1:123456789012:auto-backup:ab-L2IJCEXJP7XQ7HOJ4SIEXAMPLE"

使用带 DbInstanceAutomatedBackupsArn 参数的 DeleteDbInstanceAutomatedBackup RDS API 操作删除复制备份。