恢复到新实例
接口约束
- 源实例和目标实例的数据库类型必须一致,如都是MySQL。
- 源实例和目标实例的数据库版本约束如下:
- RDS for MySQL和RDS for PostgreSQL的源实例和目标实例的数据库版本必须一致。
- 目标实例需大于或等于源实例的数据卷总大小。
URI
- URI格式
- URI样例
https://{Endpoint}/v3/0483b6b16e954cb88930a360d2c4e663/instances
- 参数说明
表1 参数说明 名称
是否必选
说明
project_id
是
租户在某一region下的project ID。
获取方法请参见获取项目ID。
请求消息
- 参数说明
表2 参数说明 名称
是否必选
参数类型
说明
name
是
String
实例名称。
用于表示实例的名称,同一租户下,同类型的实例名唯一。
取值范围:
支持的字符长度是4~64个字符,必须以字母或中文开头,区分大小写,可以包含字母、数字、中文字符(一个中文字符占用3个字节)、中划线或者下划线,不能包含其他的特殊字符。
ha
否
Object
HA配置参数,创建HA实例时使用。
详情请参见表3。
configuration_id
否
String
参数模板ID。
port
否
String
数据库端口信息。
- RDS for MySQL数据库端口设置范围为1024~65535(其中12017和33071被RDS系统占用不可设置)。
- RDS for PostgreSQL数据库端口修改范围为2100~9500。
当不传该参数时,默认端口如下:
- RDS for MySQL默认3306。
- RDS for PostgreSQL默认5432。
password
是
String
数据库密码。
取值范围:
数据库支持的密码长度是8~32个字符,至少包含大写字母、小写字母、数字、特殊字符三种字符的组合。
建议您输入高强度密码,以提高安全性,防止出现密码被暴力破解等安全风险。
backup_strategy
否
Object
高级备份策略。
详情请参见表4。
flavor_ref
是
String
规格码,取值范围:非空,。
详情请参考查询数据库规格的响应消息中的“spec_code”。
volume
是
Object
volume信息。
详情请参见表5。
availability_zone
是
String
可用区ID。对于数据库实例类型不是单机的实例,需要分别为实例所有节点指定可用区,并用逗号隔开。详见示例。
取值范围:非空,请参见地区和终端节点。
vpc_id
否
String
虚拟私有云ID,获取方法如下:
- 方法1:登录虚拟私有云服务的控制台界面,在虚拟私有云的详情页面查找VPC ID。
- 方法2:获取方法请参见《虚拟私有云API参考》中“查询VPC列表”的内容。
subnet_id
否
String
子网的网络ID信息,获取方法如下:
- 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。
- 方法2:获取方法请参见《虚拟私有云API参考》中“查询子网列表”的内容。
security_group_id
否
String
指定实例所属的安全组。
- 方法1:登录虚拟私有云服务的控制台界面,在安全组的详情页面查找安全组ID。
- 方法2:获取方法请参见《虚拟私有云API参考》中“查询安全组列表”的内容。
restore_point
是
Object
恢复数据源对象。
详情请参见表6。
表3 ha字段数据结构说明 名称
是否必选
参数类型
说明
mode
是
String
实例主备模式,取值:Ha,不区分大小写。
replication_mode
是
String
备机同步参数。
取值:非空。
- MySQL为“async”或“semisync”。
- PostgreSQL为“async”或“sync”。
说明:- “async”为异步模式。
- “semisync”为半同步模式。
- “sync”为同步模式。
表4 backup_strategy字段数据结构说明 名称
是否必选
参数类型
说明
start_time
是
String
备份时间段。自动备份将在该时间段内触发。
取值范围:非空,格式必须为hh:mm-HH:MM且有效,当前时间指UTC时间。
- HH取值必须比hh大1。
- mm和MM取值必须相同,且取值必须为00、15、30或45。
取值示例:
- 08:15-09:15
- 23:00-00:00
keep_days
否
Integer
指定备份文件的可保存天数。
取值范围:0~732。该参数缺省,或取值为0,表示关闭自动备份策略。
表5 volume字段数据结构说明 名称
是否必选
参数类型
说明
type
是
String
磁盘类型。
取值范围如下,区分大小写:
- ULTRAHIGH,表示SSD(超高IO)。
- CLOUDSSD,表示SSD云盘。
size
是
Integer
磁盘大小。
取值范围:40GB~4000GB。必须为10的整数倍。
须知:新实例磁盘大小必须大于或等于原实例的磁盘大小。
表6 restore_point字段数据结构说明 名称
是否必选
参数类型
说明
instance_id
是
String
实例ID。
type
是
String
表示恢复方式,枚举值:
- “backup”,表示使用备份文件恢复,按照此方式恢复时,当“type”字段为非必选时,“backup_id”必选。
- “timestamp”,表示按时间点恢复,按照此方式恢复时,当“type”字段必选时,“restore_time”必选。
backup_id
否
String
用于恢复的备份ID。当使用备份文件恢复时需要指定该参数。
须知:当“type”字段为非必选时,“backup_id”必选。
restore_time
否
Integer
恢复数据的时间点,格式为UNIX时间戳,单位是毫秒,时区为UTC。
须知:当“type”字段必选时,“restore_time”必选。
- 请求样例
{ "name": "targetInst", "availability_zone": "bbb,ccc", "ha": { "mode": "ha", "replication_mode": "async" }, "flavor_ref": "rds.mysql.s1.large", "volume": { "type": "ULTRAHIGH", "size": 40 }, "region": "aaa", "vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce", "subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f", "security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5", "backup_strategy": { "keep_days": 2, "start_time": "19:00-20:00" }, "password": "Demo@12345678", "configuration_id": "52e86e87445847a79bf807ceda213165pr01", "time_zone": "UTC+04:00", "restore_point": { "instance_id": "d8e6ca5a624745bcb546a227aa3ae1cfin01", "type": "backup", "backup_id": "2f4ddb93-b901-4b08-93d8-1d2e472f30fe" } }
按时间点恢复:
{ "name": "targetInst", "availability_zone": "bbb,ccc", "ha": { "mode": "ha", "replication_mode": "async" }, "flavor_ref": "rds.mysql.s1.large", "volume": { "type": "ULTRAHIGH", "size": 40 }, "vpc_id": "490a4a08-ef4b-44c5-94be-3051ef9e4fce", "subnet_id": "0e2eda62-1d42-4d64-a9d1-4e9aa9cd994f", "security_group_id": "2a1f7fc8-3307-42a7-aa6f-42c8b9b8f8c5", "backup_strategy": { "keep_days": 2, "start_time": "19:00-20:00" }, "password": "Demo@12345678", "configuration_id": "52e86e87445847a79bf807ceda213165pr01", "restore_point": { "instance_id": "d8e6ca5a624745bcb546a227aa3ae1cfin01", "type": "timestamp", "restore_time": 1532001446987 } }
响应消息
- 正常响应要素说明
表7 要素说明 名称
参数类型
说明
instance
Object
实例信息。
详情请参见表8。
job_id
String
实例创建的任务id。
表8 instance说明 名称
参数类型
说明
id
String
实例id。
name
String
实例名称。
用于表示实例的名称,同一租户下,同类型的实例名唯一。
取值范围:
支持的字符长度是4~64个字符,必须以字母或中文开头,区分大小写,可以包含字母、数字、中文字符(一个中文字符占用3个字节)、中划线或者下划线,不能包含其他的特殊字符。
status
String
实例状态。如BUILD,表示创建中。
datastore
Object
数据库信息。
详情请参见表9。
ha
Object
HA配置参数,仅当您选择创建HA实例时该参数才可见。
详情请参见表10。
configuration_id
String
参数模板id,仅当您创建实例指定用户自定义参数组时才可见。
port
String
数据库端口信息。
- RDS for MySQL数据库端口设置范围为1024~65535(其中12017和33071被RDS系统占用不可设置)。
- RDS for PostgreSQL数据库端口修改范围为2100~9500。
当不传该参数时,默认端口如下:
- RDS for MySQL默认3306。
- RDS for PostgreSQL默认5432。
backup_strategy
Object
自动备份策略。
详情请参见表11。
flavor_ref
String
规格ID。
volume
Object
volume信息。
详情请参见表12。
region
String
区域ID。
availability_zone
String
可用区ID。
vpc_id
String
虚拟私有云ID,获取方法如下:
- 方法1:登录虚拟私有云服务的控制台界面,在虚拟私有云的详情页面查找VPC ID。
- 方法2:获取方法请参见《虚拟私有云API参考》中“查询VPC列表”的内容。
subnet_id
String
子网的网络ID信息,获取方法如下:
- 方法1:登录虚拟私有云服务的控制台界面,单击VPC下的子网,进入子网详情页面,查找网络ID。
- 方法2:获取方法请参见《虚拟私有云API参考》中“查询子网列表”的内容。
security_group_id
String
指定实例所属的安全组。
- 方法1:登录虚拟私有云服务的控制台界面,在安全组的详情页面查找安全组ID。
- 方法2:获取方法请参见《虚拟私有云API参考》中“查询安全组列表”的内容。
表9 datastore字段数据结构说明 名称
是否必选
参数类型
说明
type
是
String
数据库引擎。支持的引擎如下,不区分大小写:
- MySQL
- PostgreSQL
version
是
String
数据库版本。
数据库支持的详细版本信息,可调用查询数据库引擎的版本接口获取。
表10 ha字段数据结构说明 名称
是否必选
参数类型
说明
mode
是
String
实例主备模式,取值:Ha。
replication_mode
是
String
备机同步参数。
取值:非空。
- MySQL为“async”或“semisync”。
- PostgreSQL为“async”或“sync”。
说明:- “async”为异步模式。
- “semisync”为半同步模式。
- “sync”为同步模式。
- 正常响应样例
{ "instance": { "id": "f5ffdd8b1c98434385eb001904209eacin01", "name": "demoname", "status": "BUILD", "datastore": { "type": "MySQL", "version": "5.6.41" }, "port": "3306", "volume": { "type": "ULTRAHIGH", "size": "40" }, "region": "aaa", "backup_strategy": { "start_time": "02:00-03:00", "keep_days": "7" }, "flavor_ref": "rds.mysql.s1.large", "availability_zone": "bbb", "vpc_id": "19e5d45d-70fd-4a91-87e9-b27e71c9891f", "subnet_id": "bd51fb45-2dcb-4296-8783-8623bfe89bb7", "security_group_id": "23fd0cd4-15dc-4d65-bdb3-8844cc291be0" }, "job_id": "bf003379-afea-4aa5-aa83-4543542070bc" }
PostgreSQL
{ "instance": { "id": "f5ffdd8b1c98434385eb001904209eacin01", "name": "demoname", "status": "BUILD", "datastore": { "type": "PostgreSQL", "version": "9.6.13" }, "port": "5432", "volume": { "type": "ULTRAHIGH", "size": "40" }, "region": "aaa", "backup_strategy": { "start_time": "02:00-03:00", "keep_days": "7" }, "flavor_ref": "rds.pg.s1.large", "availability_zone": "bbb", "vpc_id": "19e5d45d-70fd-4a91-87e9-b27e71c9891f", "subnet_id": "bd51fb45-2dcb-4296-8783-8623bfe89bb7", "security_group_id": "23fd0cd4-15dc-4d65-bdb3-8844cc291be0" }, "job_id": "bf003379-afea-4aa5-aa83-4543542070bc" }
- 异常响应
请参见异常请求结果。
状态码
- 正常
- 异常
请参见状态码。
错误码
请参见错误码。