Amazon Relational Database Service
用户指南 (API Version 2014-10-31)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。请点击 Amazon AWS 入门,可查看中国地区的具体差异

将数据库实例还原至指定时间

Amazon RDS 自动备份功能将自动为数据库实例创建存储卷快照,并备份整个数据库实例而不仅仅是单个数据库。此备份可以在用户可配置的 30 分钟日常时间段内进行,该时间段称为备份时段。系统会在可配置天数内保留此自动备份 (该段时间称为备份保留期)。您可以在此保留期内将数据库实例还原到任一指定时间,以此创建新数据库实例。

将数据库实例还原到某个时间点时,默认数据库安全组将应用于新数据库实例。如果需要将自定义数据库安全组应用于数据库实例,一旦数据库实例可用,您就必须使用 AWS 管理控制台、Amazon RDS API ModifyDBInstance 操作或 AWS CLI modify-db-instance 命令显式应用它们。

您可在备份保留期内还原到任一时间点。要确定某个数据库实例的最近可还原时间,请使用 AWS CLI describe-db-instances 命令,并查看该数据库实例的 LatestRestorableTime 字段中返回的值。数据库实例的最近可还原时间通常为当前时间之前 5 分钟内。

当前不支持 OFFLINE、EMERGENCY 和 SINGLE_USER 模式。将任何数据库设置成上述模式之一,会导致整个实例的最近可还原时间停滞不前。

从某个时间点进行还原时,Amazon RDS 使用的某些数据库引擎还有一些特殊的注意事项。将 Oracle 数据库实例还原到某个时间点时,可指定不同的 Oracle 数据库引擎、许可模式和 DBName (SID) 供新数据库实例使用。将 SQL Server 数据库实例还原到某个时间点时,该实例中的每个数据库均还原到与实例中每个其他数据库相差 1 秒以内的时间点。对于实例内跨多个数据库的事务,还原时可能会发生不一致的情况。

某些操作 (如更改 SQL Server 数据库的恢复模式) 可中断用于时间点恢复的日志序列。在某些情况下,Amazon RDS 可检测到此问题并阻止最近可还原时间前移;在另外一些情况下 (如当 SQL Server 数据库使用 BULK_LOGGED 恢复模式时),则检测不到日志序列中断。如果日志序列中断,则可能无法将 SQL Server 数据库实例还原到某个时间点。出于这些原因,Amazon RDS 不支持更改 SQL Server 数据库的恢复模式。

AWS 管理控制台

要将数据库实例还原到指定时间,请执行以下操作

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

  2. 在导航窗格中,单击 DB Instances

  3. 单击 Instance Actions,然后单击 Restore To Point In Time

    此时会显示 Restore DB Instance 窗口。

  4. 单击 Use Custom Restore Time 单选按钮。

  5. Use Custom Restore Time 文本框内输入您要还原的日期和时间。

  6. DB Instance Identifier 文本框内键入还原的数据库实例名。

  7. 单击 Launch DB Instance 按钮。

CLI

要将数据库实例还原到指定时间,请使用 AWS CLI 命令 restore-db-instance-to-point-in-time 创建新的数据库实例。

针对 Linux、OS X 或 Unix:

aws rds restore-db-instance-to-point-in-time \ --source-db-instance-identifier mysourcedbinstance \ --target-db-instance-identifier mytargetdbinstance \ --restore-time 2009-10-14T23:45:00.000Z

对于 Windows:

aws rds restore-db-instance-to-point-in-time ^ --source-db-instance-identifier mysourcedbinstance ^ --target-db-instance-identifier mytargetdbinstance ^ --restore-time 2009-10-14T23:45:00.000Z

API

要将数据库实例还原到指定时间,请调用带下列参数的 Amazon RDS API RestoreDBInstanceToPointInTime 函数:

  • SourceDBInstanceIdentifier = mysourcedbinstance

  • TargetDBInstanceIdentifier = mytargetdbinstance

  • RestoreTime = 2013-10-14T23:45:00.000Z

https://rds.us-east-1.amazonaws.com/ ?Action=RestoreDBInstanceToPointInTime &RestoreTime=2013-10-14T23%3A45%3A00.000Z &SignatureMethod=HmacSHA256 &SignatureVersion=4 &SourceDBInstanceIdentifier=mysourcedbinstance &TargetDBInstanceIdentifier=mytargetdbinstance &Version=2013-09-09 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20131016/us-east-1/rds/aws4_request &X-Amz-Date=20131016T233051Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=087a8eb41cb1ab0fc9ec1575f23e73757ffc6a1e42d7d2b30b9cc0be988cff97

相关主题