根据源实例全量备份创建一个新实例,新实例的数据跟源实例在创建备份时的数据状态一样。
例如根据源实例A的一个全量备份"mybak"新建一个实例B,该备份是在"'2018-8-18 03:23:54"创建的。那么新建实例B的数据状态跟实例A'2018-8-18 03:23:54'的状态一致
POST
https://rds.jdcloud-api.com/v1/regions/{regionId}/instances:createInstanceFromBackup
名称 | 类型 | 是否必需 | 默认值 | 描述 |
---|---|---|---|---|
regionId | String | True | 地域代码,取值范围参见《各地域及可用区对照表》 |
名称 | 类型 | 是否必需 | 默认值 | 描述 |
---|---|---|---|---|
backupId | String | True | 备份ID | |
engine | String | True | 标识是创建什么类型的实例,例如MySQL,SQL Server等,具体可参见文档枚举参数定义 注意:备份来源实例的engine和要创建的实例的engine必须一致 | |
instanceSpec | RestoredNewDBInstanceSpec | True | 新建实例规格 |
名称 | 类型 | 是否必需 | 默认值 | 描述 |
---|---|---|---|---|
instanceName | String | False | 数据库实例名,名称的限制可参考帮助中心文档 | |
instanceClass | String | True | 实例规格代码,可以查看文档MySQL 实例规格、SQL Server实例规格 | |
instanceStorageGB | Integer | True | 磁盘大小,单位GB | |
azId | String[ ] | True | 可用区ID, 第一个ID必须为主实例所在的可用区。如两个可用区一样,也需输入两个azId | |
vpcId | String | True | VPC的ID | |
subnetId | String | True | 子网ID | |
parameterGroup | String | False | 参数组ID, 缺省系统会创建一个默认参数组 - 仅支持MySQL | |
chargeSpec | ChargeSpec | True | 计费规格,包括计费类型,计费周期等 | |
instanceStorageType | String | False | 存储类型,参见枚举参数定义, 缺省值为:LOCAL_SSD - 仅支持MySQL | |
instancePort | String | False | 应用访问端口,支持的端口范围:1150~5999。MySQL、Percona、MariaDB的默认值为 3306;PostgreSQL的默认端口号为5432; | |
storageEncrypted | Boolean | False | 实例数据加密(存储类型为云硬盘才支持数据加密)。false:不加密,true:加密,缺省为false - 仅支持MySQL | |
instanceType | String | False | 实例的高可用架构。standalone:单机,cluster:主备双机架构,缺省为cluster - 仅支持SQL Server |
名称 | 类型 | 是否必需 | 默认值 | 描述 |
---|---|---|---|---|
chargeMode | String | False | postpaid_by_duration | 计费模式,取值为:prepaid_by_duration,postpaid_by_usage或postpaid_by_duration,prepaid_by_duration表示预付费,postpaid_by_usage表示按用量后付费,postpaid_by_duration表示按配置后付费,默认为postpaid_by_duration.请参阅具体产品线帮助文档确认该产品线支持的计费类型 |
chargeUnit | String | False | 预付费计费单位,预付费必填,当chargeMode为prepaid_by_duration时有效,取值为:month、year,默认为month | |
chargeDuration | Integer | False | 预付费计费时长,预付费必填,当chargeMode取值为prepaid_by_duration时有效。当chargeUnit为month时取值为:1~9,当chargeUnit为year时取值为:1、2、3 | |
autoRenew | Boolean | False | True=:OPEN------开通自动续费、False=CLOSE------ 不开通自动续费,默认为CLOSE | |
buyScenario | String | False | 产品线统一活动凭证JSON字符串,需要BASE64编码,目前要求编码前格式为 {"activity":{"activityType":必填字段, "activityIdentifier":必填字段}} |
名称 | 类型 | 描述 |
---|---|---|
result | Result |
名称 | 类型 | 描述 |
---|---|---|
instanceId | String |
返回码 | 描述 |
---|---|
200 | OK |
POST
复制成功
public void testCreateInstanceFromBackup() {
CreateInstanceFromBackupRequest request = new CreateInstanceFromBackupRequest();
request.setRegionId("cn-north-1");
request.setEngine("MySQL");
RestoredNewDBInstanceSpec instanceSpec = new RestoredNewDBInstanceSpec();
List<String> azids = new ArrayList<String>();
azids.add("cn-north-1a");
instanceSpec.setAzId(azids);
instanceSpec.setInstanceClass("db.mysql.s1.micro");
instanceSpec.setInstanceName("create_by_backup");
instanceSpec.setInstanceStorageGB(20);
instanceSpec.setVpcId("vpc-yn4dblxgeb");
instanceSpec.setSubnetId("subnet-820lwf1mlp");
ChargeSpec chargeSpec = new ChargeSpec();
chargeSpec.setChargeMode("postpaid_by_duration");
chargeSpec.setChargeUnit("month");
chargeSpec.setChargeDuration(1);
instanceSpec.setChargeSpec(chargeSpec);
request.setInstanceSpec(instanceSpec);
request.setBackupId("dcd25cd6-a787-4fea-8e89-1451ba600591");
CreateInstanceFromBackupResponse response = rdsClient.createInstanceFromBackup(request);
System.out.println(new Gson().toJson(response));
}
复制成功
{
"requestId": "bpa53tnvaeo4spjdcrumw5qjr4c6p4sc",
"result": {
"instanceId": "mysql-k67q8n46si"
}
}
我们的产品专家为您找到最合适的产品/解决⽅案
1v1线上咨询获取售前专业咨询
专业产品顾问,随时随地沟通