调用CreateDBInstance接口创建RDS实例。
请确保在使用该接口前,已充分了解RDS产品的收费方式和价格。更多信息,请参见价格、收费项与计费方式。
关于RDS实例的规格,请参见实例规格表。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateDBInstance | 系统规定参数,取值:CreateDBInstance。 |
RegionId | String | 是 | cn-hangzhou | 地域ID。可以通过接口DescribeRegions查看可用的地域ID。 |
Engine | String | 是 | MySQL | 数据库类型,取值:
说明 如需创建Serverless实例,请传入MySQL。 |
EngineVersion | String | 是 | 5.6 | 数据库版本,取值:
说明 如需创建Serverless实例,请传入8.0。 |
DBInstanceClass | String | 是 | rds.mysql.s1.small | 实例规格。详情请参见主实例规格表。您也可以调用DescribeAvailableResource接口查询目标地域中可用的实例规格列表。 说明 如需创建Serverless实例,请传入mysql.n2.serverless.1c。 |
DBInstanceStorage | Integer | 是 | 100 | 实例存储空间。单位:GB。每5GB进行递增,取值范围请参见实例规格表。您也可以调用DescribeAvailableResource接口查询目标实例规格中可用的存储空间范围。 |
SystemDBCharset | String | 否 | gbk | 字符集。该参数已弃用。 |
DBInstanceNetType | String | 是 | Internet | 实例的网络连接类型,取值:
|
DBInstanceDescription | String | 否 | 测试数据库 | 实例名称。长度为2~255个字符。以中文、英文字母开头,可以包含数字、中文、英文、下划线(_)、短横线(-)。 说明 不能以 http:// 和 https:// 开头。 |
SecurityIPList | String | 是 | 10.10.XX.XX/24 | 该实例的IP白名单。多条记录请以半角逗号(,)隔开,不可重复,最多1000条记录。支持如下两种格式:
|
ClientToken | String | 否 | ETnLKlblzczshOTUbOCz***** | 用于保证请求的幂等性,防止重复提交请求。由客户端生成该参数值,要保证在不同请求间唯一,最大值不超过64个ASCII字符,且该参数值中不能包含非ASCII字符。 |
PayType | String | 是 | Postpaid | 实例的付费类型,取值:
说明 系统会自动生成订单并自动完成支付,无需手动确认支付。 |
ZoneId | String | 否 | cn-hangzhou-b | 主节点可用区ID。 说明
|
ZoneIdSlave1 | String | 否 | cn-hangzhou-c | 备节点可用区ID。如果和ZoneId相同,则为单可用区部署;如果和ZoneId不同,则为多可用区部署。 |
ZoneIdSlave2 | String | 否 | cn-hangzhou-d |
备节点或日志节点可用区ID。如果和ZoneId相同,则为单可用区部署;如果和ZoneId不同,则为多可用区部署。 |
InstanceNetworkType | String | 否 | Classic | 实例的网络类型,取值:
说明
|
ConnectionMode | String | 否 | Standard | 实例的访问模式,取值:
默认为RDS系统分配。 说明 SQL Server 2012/2016/2017只支持标准访问模式。 |
VPCId | String | 否 | vpc-***** | 专有网络(VPC) ID。 说明 网络类型InstanceNetworkType取值为VPC时生效。 |
VSwitchId | String | 否 | vsw-***** | 虚拟交换机(vSwitch) ID。虚拟交换机所在的可用区必须和ZoneId中传入的可用区ID相对应。 说明 需要网络类型InstanceNetworkType=VPC。 |
PrivateIpAddress | String | 否 | 172.16.XX.XX | 设置实例的内网IP。需要在指定交换机的IP地址范围内。系统默认通过VPCId和vSwitchId自动分配。 |
UsedTime | String | 否 | 2 | 指定购买时长,取值:
说明 若付费类型为Prepaid则该参数必须传入。 |
Period | String | 否 | Year | 指定预付费实例为包年或者包月类型,取值:
说明 若付费类型为Prepaid则该参数必须传入。 |
ResourceGroupId | String | 否 | rg-acfmy***** | 资源组ID。 |
DBInstanceStorageType | String | 是 | cloud_essd | 实例存储类型,取值:
说明 本参数的默认值根据DBInstanceClass参数中传的规格代码自动判断:
|
BusinessInfo | String | 否 | 121436975448952 | 业务扩展参数。 |
EncryptionKey | String | 否 | 0d24*****-da7b-4786-b981-9a164dxxxxxx | 同地域内的云盘加密的密钥ID。传入此参数表示开启云盘加密(开启后无法关闭),并且需要传入RoleARN。 您可以在密钥管理服务控制台查看密钥ID,也可以创建新的密钥。详情请参见创建密钥。 |
RoleARN | String | 否 | acs:ram::1406xxxxxx:role/aliyunrdsinstanceencryptiondefaultrole | 主账号授权RDS云服务账号访问KMS权限的全局资源描述符(ARN)。您可以通过CheckCloudResourceAuthorized接口查看ARN信息。 |
AutoRenew | String | 否 | true | 实例是否自动续费,仅在创建包年包月实例时传入,取值:
说明
|
Category | String | 否 | HighAvailability | 实例系列,取值:
|
DedicatedHostGroupId | String | 否 | dhg-4n***** | 专属集群主机组ID。 在专属集群内创建RDS实例时需要指定。 说明
|
TargetDedicatedHostIdForMaster | String | 否 | i-bp*****1 | 专属集群中主实例的主机ID。 在专属集群内创建RDS实例时需要指定。如不指定该参数,系统默认自动分配主机。 说明
|
TargetDedicatedHostIdForSlave | String | 否 | i-bp*****2 | 专属集群中备实例的主机ID。 在专属集群内创建RDS高可用版或三节点企业版实例时需要指定。如不指定该参数,系统默认自动分配主机。 说明
|
TargetDedicatedHostIdForLog | String | 否 | i-bp*****3 | 专属集群中日志实例的主机ID。 在专属集群内创建RDS三节点企业版实例时需要指定。如不指定该参数,系统默认自动分配主机。 说明
|
DBParamGroupId | String | 否 | rpg-sys-***** | 参数模板ID。可调用DescribeParameterGroups查询。 说明
|
DBTimeZone | String | 否 | +08:00 | 设置实例的时区,仅在Engine为MySQL或PostgreSQL时生效。
说明
|
DBIsIgnoreCase | String | 否 | true | 表名是否区分大小写,取值:
|
TargetMinorVersion | String | 否 | rds_20200229 | 指定创建的RDS实例的内核小版本,仅在创建MySQL或PostgreSQL实例时需要传入。 格式:
说明 数字版本号可通过调用DescribeDBMiniEngineVersions接口查询。各版本差异,请参见AliSQL 小版本Release Notes。
说明 如果BabelfishConfig中配置了启用Babelfish,则RDS PostgreSQL实例小版本格式为: rds_postgres_大版本00_AliPG内核小版本_babelfish 。 |
StorageAutoScale | String | 否 | Disable | 存储空间自动扩容开关,取值:
说明 您也可以在实例创建完成之后,调用ModifyDasInstanceConfig进行调整。更多信息,请参见设置存储空间自动扩容。 |
StorageThreshold | Integer | 否 | 50 | 存储空间自动扩容触发阈值(百分比),取值:
说明 StorageAutoScale为Enable时该参数必填。 |
StorageUpperBound | Integer | 否 | 2000 | 存储空间自动扩容的总存储空间上限值,即自动扩容不会导致实例总存储空间超过该值。单位:GB。
|
DryRun | Boolean | 否 | false | 是否对本次创建实例的操作执行预检查,取值:
|
UserBackupId | String | 否 | 67798***** | 用户备份ID。可调用ListUserBackupFiles接口查询。传入该参数,可基于用户备份创建实例。 说明 如需传入此参数,有如下限制:
|
Amount | Integer | 否 | 2 | 指定需要创建的RDS MySQL实例数量。本参数仅适用于批量创建RDS MySQL实例。 取值范围:1~20;默认值:1。 说明
|
CreateStrategy | String | 否 | Atomicity | 批量创建实例策略。本参数仅在Amount参数大于1时生效,取值:
说明 默认值:Atomicity。 |
Tag.N.Key | String | 否 | testkey1 | 标签键。传入此参数为实例绑定标签。 说明
|
Tag.N.Value | String | 否 | testvalue1 | 标签键对应的标签值。传入此参数为实例绑定标签。 说明
|
DeletionProtection | Boolean | 否 | true | 是否开启RDS释放保护功能,取值:
|
BabelfishConfig | String | 否 | {"babelfishEnabled":"true","migrationMode":"single-db","masterUsername":"babelfish_user","masterUserPassword":"Babelfish123!"} | Babelfish for RDS PostgreSQL配置信息。 配置格式:{"babelfishEnabled":"true","migrationMode":"xxxxxxx","masterUsername":"xxxxxxx","masterUserPassword":"xxxxxxxx"} 参数含义如下:
说明 该参数仅适用于RDS PostgreSQL实例,Babelfish for RDS PostgreSQL的更多介绍,请参见Babelfish简介。 |
ServerlessConfig | Object | 否 | RDS Serverless实例的相关设置。创建Serverless实例时必传。 说明 Serverless相关配置仅适用于RDS MySQL实例。 |
|
MaxCapacity | double | 否 | 8 | 实例RCU(RDS Capacity Unit)自动扩缩范围的最大值。取值:0.5~8。 说明 该参数的值必须大于等于MinCapacity。 |
MinCapacity | double | 否 | 0.5 | 实例RCU自动扩缩范围的最小值。取值:0.5~8。 说明 该参数的值必须小于等于MaxCapacity。 |
AutoPause | Boolean | 否 | true | 是否开启Serverless实例的智能暂停和启动。取值:
说明 如果10分钟无任何连接将进入暂停状态,当连接进入时会自动唤醒。 |
SwitchForce | Boolean | 否 | false | 是否开启Serverless实例的强制弹性扩缩容。取值:
说明
|
ConnectionString | String | 否 | rm-uf6wjk5*****.mysql.rds.aliyuncs.com | 数据库连接地址。 说明 参数DBInstanceNetType决定该地址为内网或外网。 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
DryRunResult | Boolean | true | 创建实例预检查是否通过。返回值:
|
TagResult | Boolean | true | 实例是否成功绑定标签。返回值:
说明 如不为实例绑定标签,则不返回该参数。 |
RequestId | String | 1E43AAE0-BEE8-43DA-860D-EAF2AA0724DC | 请求ID。 |
ConnectionString | String | rm-uf6wjk5*****.mysql.rds.aliyuncs.com | 数据库连接地址。 说明 参数DBInstanceNetType决定该地址为内网或外网。 |
Message | String | Batch Create DBInstance Task Is In Process. | 批量创建任务的提示信息。 说明 该参数仅在Amount参数大于1时返回。 |
DBInstanceId | String | rm-uf6wjk5***** | 实例ID。若给Amount参数指定大于1的值, 将返回与该值对应的实例ID个数,以逗号分隔。 例如Amount参数为3,则返回3个实例ID。示例: rm-uf6wjk5*****1,rm-uf6wjk5*****2,rm-uf6wjk5*****3
|
Port | String | 3306 | 数据库连接端口。 说明 参数DBInstanceNetType决定该端口为内网或外网。 |
TaskId | String | s2365879-a9d0-55af-fgae-f2***** | 批量创建任务的任务ID。 说明
|
DryRun | Boolean | true | 表示当前请求需要在创建实例前执行预检查。 说明
|
OrderId | String | 1007893702***** | 订单ID。 |

示例
请求示例
http(s)://rds.aliyuncs.com/?Action=CreateDBInstance
&RegionId=cn-hangzhou
&Engine=MySQL
&EngineVersion=5.6
&DBInstanceClass=rds.mysql.s1.small
&DBInstanceStorage=100
&DBInstanceNetType=Internet
&PayType=Postpaid
&SecurityIPList=10.23.XX.XX/24
&<公共请求参数>
正常返回示例
XML
格式
HTTP/1.1 200 OK
Content-Type:application/xml
<CreateDBInstanceResponse>
<OrderId>1007893702*****</OrderId>
<ConnectionString>rm-uf6wjk5*****.mysql.rds.aliyuncs.com</ConnectionString>
<DBInstanceId>rm-uf6wjk5*****</DBInstanceId>
<Port>3306</Port>
<RequestId>1E43AAE0-BEE8-43DA-860D-EAF2AA0724DC</RequestId>
</CreateDBInstanceResponse>
JSON
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"OrderId" : "1007893702*****",
"ConnectionString" : "rm-uf6wjk5*****.mysql.rds.aliyuncs.com",
"DBInstanceId" : "rm-uf6wjk5*****",
"Port" : 3306,
"RequestId" : "1E43AAE0-BEE8-43DA-860D-EAF2AA0724DC"
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | InvalidInstanceLevel.DiskType | Specified instance level not support request disk type | 当前实例规格不支持该存储类型。 |
400 | RR309 | We have detected a security risk with your payment method. Please proceed with verification via the link in your email or console message and re-submit your order after verification. | 我们检测到您的付款方式存在安全风险。请通过电子邮件或控制台消息中的链接继续验证,并在验证后重新提交订单。 |
400 | InvalidZoneId.NotSupported | The Specified vpc Zone not supported. | 当前可用区不支持创建VPC网络类型实例,请更换可用区。 |
400 | InvalidZone.NotSupportedForStorageType | The specified zone is closed or invalid for Specified DBInstanceStorageType. | 指定的区域已关闭或对于指定的DBInstanceStorageType无效。 |
400 | InvalidZone.NotSupported | The Specified Zone not supported. | 区域无效。 |
400 | InvalidEssdStorageSize | invalid cloud essd storage size. | 云盘存储规格有误,请检查存储规格配置。 |
400 | IncompleteAccountInfo | Your information is incomplete. Complete your information before the operation. | 操作失败,账号信息中带*为必填项,请补充填写。路径:账号中心-基本信息。 |
400 | IncompleteTaxInfo | Your tax information is incomplete. Complete your information before the operation. | 操作失败,税务信息尚未完善。请补充信息。 |
400 | InvalidPaymentMethod.Incomplete | No payment method is specified for your account. We recommend that you add a payment method. | 您的账户暂无有效支付方式,请添加支付方式。 |
400 | InvalidPaymentMethod.Missing | No payment method is specified for your account. We recommend that you add a payment method. | 您的账户暂无有效支付方式,请添加支付方式。 |
400 | InsuffcientBalanceOrBankAccount | Add a payment method or add funds to the prepayment balance. Get started by creating an instance. | 当前账户暂无有效支付方式,请添加支付方式或给预付款充值。 |
400 | VswitchIpExhausted | Vswitch IP exhausted. | 操作失败,vSwitch IP耗尽。 |
400 | InvalidPrivateIpAddress.AlreadyUsed | The specified IP is already used. | ip已被使用。 |
400 | InvalidConcurrentOperate | Concurrent operation is detected. | 存在并发操作,请等待上一操作完成后再重试。 |
400 | ZoneId.NotMatchWithCategory | The number of ZoneId specified does not match with category. | 可用区数量与数据库类型或实例系列不匹配。请重新设置。 |
400 | InvalidSecurityIPList.Format | The specified parameter securityIPList is not valid. | 指定的安全IP列表格式不符合要求,请检查格式规范。 |
400 | InvalidEngineVersion.Malformed | The specified parameter EngineVersion is not valid. | 数据库引擎版本无效,请确认后重试。 |
400 | CreditPayInsufficientBalance | Insufficient credit pay limit. Please contact your channel partner to increase the limit. | 额度不足,请联系您的渠道合作伙伴提升额度。 |
400 | InvalidTagKey.Malformed | The Tag.N.Key parameter is empty. | Tag.N.Key参数为空 |
400 | InvalidTagValue.Malformed | The Tag.N.Value parameter is empty. | Tag.N.Value参数为空 |
400 | Duplicate.TagKey | The Tag.N.Key contains duplicate keys. | Tag.N.Key包含重复键 |
400 | NumberExceed.Tags | The maximum number of Tags is exceeded. The maximum is 20. | 标签参数数量超过限制,有效数量:20。 |
400 | MissingParameter.ResourceIds | The parameter ResourceIds.N must not be null. | 参数ResourceIds.N不能为空。 |
400 | InvalidParameter.TagKey | The Tag.N.Key parameter is invalid. | Tag.N.Key参数无效. |
400 | InvalidParameter.TagValue | The Tag.N.Value parameter is invalid. | Tag.N.Value参数无效。 |
400 | NoPermission.SystemTag | You have no permission to use system tags. | 不能使用系统标签。 |
400 | InvalidParam.Amount | Amount is allowed from 1 to 20. | 数量支持1到20的数值。 |
400 | InvalidParam.CreateStrategy | Only Atomicity and Partial are allowed. | 只支持Atomicity和Partial参数 |
400 | InvalidConnectionString.Duplicate | Specified connection string already exists in the Aliyun RDS. | 链接地址名重复,请重新设置连接字符串。 |
401 | CannotDecreaseEssdPerfLevel | cannot decrease cloud essd performance level. | 存储类型变更校验失败,SQL Server云盘实例只能转为云盘,SSD只能升级到SSD或ESSD。 |
403 | AliCroup2CloudUserCannotBuyNotInnerCommodity | There is no group cloud commodity label, and users within the group are not allowed to purchase. | 无集团上云商品标签,不允许集团内部用户购买。 |
403 | GroupReplicationNotSupport.InvalidEngineVersion | Group Replication requires the instance engine version to be 8.0. | 实例数据库版本不是MySQL 8.0,不支持组复制。 |
403 | GroupReplicationNotSupport.InvalidNodeClassCode | Group Replication requires the ClassCode of each node to be consistent. | 实例各节点间规格不一致,不支持组复制。 |
403 | GroupReplicationNotSupport.InvalidNodeNum | Group Replication is not supported, the number of nodes must be an odd number greater than or equal to 3. | 实例节点个数不是大于等于3的单数,不支持组复制。 |
403 | GroupReplicationNotSupport.InvalidXengine | Group Replication is not supported because the instance has xengine tables. | 实例存在xengine引擎表,不支持组复制。 |
403 | GroupReplicationNotSupport.MemoryTooSmall | Group Replication is not supported because the memory is too small. | 实例规格内存太小,不支持组复制。 |
访问错误中心查看更多错误码。