Amazon Relational Database Service
用户指南 (API 版本 2014-10-31)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

从数据库快照还原

Amazon RDS 创建数据库实例的存储卷快照,并备份整个数据库实例而不仅仅是单个数据库。您可通过从该数据库快照还原来创建数据库实例。还原数据库实例时,您需要提供用于还原的数据库快照的名称,然后提供还原后所新建的数据库实例的名称。您无法从数据库快照还原到现有数据库实例;在还原时,将创建一个新的数据库实例

您可以还原数据库实例并使用与源数据库快照不同的存储类型。在这种情况下,由于将数据迁移到新的存储类型需要额外的工作,还原过程会更慢。在还原到磁性 (标准) 存储或从其中还原时,迁移过程最慢。这是因为磁性存储不具备配置的 IOPS 或通用型 (SSD) 存储的 IOPS 功能。

注意

您无法从共享并且加密的数据库快照中恢复数据库实例。您可以改为创建数据库快照副本,并从该副本还原数据库实例

参数组注意事项

我们建议您保留所创建的数据库快照的参数组,这样还原的数据库实例就可以与正确的参数组关联。您可以在还原数据库实例时指定参数组。

安全组注意事项

在还原数据库实例时,默认安全组与还原的实例相关联。还原完成之后您的新数据库实例即变为可用状态,这时您必须关联还原的源实例所用的所有自定义安全组。您必须使用 RDS 控制台的修改命令、ModifyDBInstance Amazon RDS API 或 AWS CLImodify-db-instance 命令应用这些更改。

选项组注意事项

还原数据库实例时,与数据库快照关联的选项组将与还原后创建的数据库实例相关联。例如,如果您要还原的数据库快照使用 Oracle 透明数据加密,则还原后的数据库实例将使用相同的选项组。

向数据库实例分配选项组时,选项组还会链接到数据库实例所处的受支持平台,即 VPC 或 EC2-Classic (非 VPC)。如果数据库实例在某个 VPC 中,则与该数据库实例关联的选项组会链接到该 VPC。这意味着,如果您尝试将数据库实例还原到不同的 VPC 或平台中,则无法使用为该数据库实例分配的选项组。如果您将数据库实例还原到不同的 VPC 中或不同的平台上,则必须向该实例分配默认选项组、分配链接到该 VPC 或平台的选项组,或是创建新选项组并将其分配给数据库实例。对于持续或永久选项,在将数据库实例还原到不同的 VPC 中时,您必须创建包含该持续或永久选项的新选项组。

Microsoft SQL Server 注意事项

如果您要将 Microsoft SQL Server 数据库快照还原为新实例,总是可以还原为与快照相同的版本。在某些情况下,您还可以更改数据库实例的版本。以下是更改版本的限制:

  • 数据库快照必须为新版本分配足够的存储。

  • 只支持以下版本更改:

    • 从标准版更改为企业版

    • 从网络版更改为标准版或企业版

    • 从速成版更改为网络版、标准版或企业版

如果您希望从一个版本更改为另一个新版本,但还原快照不支持,您可以尝试使用本机备份和还原功能。SQL Server 根据数据库已启用的 SQL Server 功能,验证您的数据库是否与新版本兼容。有关更多信息,请参阅 导入和导出 SQL Server 数据库

Oracle 注意事项

如果您使用 Oracle GoldenGate,请始终使用 compatible 参数保留参数组。从数据库快照还原数据库实例时,您必须指定具有匹配或更大 compatible 参数值的参数组。

在还原数据库快照之前,可以先升级数据库快照。有关更多信息,请参阅 升级 Oracle 数据库快照

从快照还原

您可以使用 AWS 管理控制台、AWS CLI 或 RDS API 从数据库快照还原数据库实例

AWS 管理控制台

若要从数据库快照还原数据库实例

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

  2. 在导航窗格中,选择 Snapshots

  3. 选择要从其还原的数据库快照。

  4. 操作下拉菜单中,选择还原快照

  5. 还原数据库实例页面上的数据库实例标识符字段中,键入还原的数据库实例的名称。

  6. 选择 Restore DB Instance

  7. 如果要将数据库实例的功能恢复到创建快照的数据库实例的功能,您必须修改数据库实例以使用安全组。后续步骤假定您的数据库实例在 VPC 中。如果您的数据库实例不在 VPC 中,请使用 EC2 管理控制台找到该数据库实例所需的安全组。

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

    2. 在导航窗格中,选择 Security Groups

    3. 选择要用于数据库实例的安全组。如有必要,请添加规则,将该安全组链接到 EC2 实例的安全组。有关更多信息,请参阅VPC 中的数据库实例由同一 VPC 中的 EC2 实例访问

CLI

要从数据库快照还原数据库实例,请使用 AWS CLI 命令 restore-db-instance-from-db-snapshot

在该示例中,您将从先前创建的名为 mydbsnapshot 的数据库快照中进行还原。还原为名为 mynewdbinstance 的新数据库实例。

针对 Linux、OS X 或 Unix:

aws rds restore-db-instance-from-db-snapshot \ --db-instance-identifier mynewdbinstance \ --db-snapshot-identifier mydbsnapshot

对于 Windows:

aws rds restore-db-instance-from-db-snapshot ^ --db-instance-identifier mynewdbinstance ^ --db-snapshot-identifier mydbsnapshot

该命令会返回类似以下内容的输出:

DBINSTANCE mynewdbinstance db.m3.large MySQL 50 sa creating 3 n 5.6.40 general-public-license

在还原数据库实例后,如果您需要具有与以前的数据库实例相同的功能,则必须将数据库实例添加到用于创建数据库快照的数据库实例使用的安全组中。

API

要从数据库快照还原数据库实例,请使用以下参数调用 Amazon RDS API 函数 RestoreDBInstanceFromDBSnapshot

  • DBInstanceIdentifier

  • DBSnapshotIdentifier