调用CreateReadOnlyDBInstance接口为某个实例创建一个只读实例。
- 主实例(非专属集群)的版本必须为以下其中一种:
- MySQL 8.0高可用版或三节点企业版
- MySQL 5.7高可用版或三节点企业版
- MySQL 5.6
- SQL Server 2017集群版
- PostgreSQL 10(本地SSD盘)、11、12高可用版
- 对于MySQL实例:
- 如果主实例内存≥64GB,最多允许创建10个只读实例。
- 如果主实例内存<64GB,最多允许创建5个只读实例。
- 对于SQL Server实例,最多允许创建7个只读实例。
- 对于PostgreSQL实例,本地盘主实例最多允许创建5个只读实例,云盘主实例最多允许创建32个只读实例。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | CreateReadOnlyDBInstance | 系统规定参数,取值:CreateReadOnlyDBInstance。 |
DBInstanceClass | String | 是 | rds.mys2.small | 实例规格,详见只读实例规格列表。建议只读实例规格不小于主实例规格,否则易导致只读实例延迟高、负载高等现象。 |
DBInstanceId | String | 是 | rm-uf6wjk5xxxxxxx | 主实例ID。 |
DBInstanceStorage | Integer | 是 | 20 | 存储空间,取值:5-3000,每5GB进行递增,单位:GB。
说明 不同版本实例,支持的取值范围不同,请以控制台创建只读实例页面为准。
|
EngineVersion | String | 是 | 5.6 | 数据库版本号。必须与主实例相同。
|
PayType | String | 是 | Postpaid | 付费类型,实取值:
|
RegionId | String | 是 | cn-hangzhou | 地域ID。只读实例的地域必须和主实例相同。可以通过接口DescribeRegions查看地域列表。 |
ZoneId | String | 是 | cn-hangzhou-b | 可用区ID。可以通过接口DescribeRegions查看可用区列表。 |
ClientToken | String | 否 | ETnLKlblzczshOTUbOCzxxxxxxxxxx | 用于保证请求的幂等性,防止重复提交请求。由客户端生成该参数值,要保证在不同请求间唯一,最大值不超过64个ASCII字符,且该参数值中不能包含非ASCII字符。 |
DBInstanceDescription | String | 否 | 测试只读实例 | 实例描述,长度为2~256个字符。以中文、英文字母开头,可以包含数字、中文、英文、下划线(_)、短横线(-)。
说明 不能以 http:// 和 https:// 开头。
|
InstanceNetworkType | String | 否 | Classic | 只读实例的网络类型,取值:
默认创建专有网络实例,需要传入VPCId和VSwitchId。
说明 只读实例的网络类型可以和主实例不同。
|
VPCId | String | 否 | vpc-uf6f7l4fg90xxxxxxxxxx | 只读实例的专有网络VPC ID。当InstanceNetworkType配置为空或VPC时需要传入。
说明
|
VSwitchId | String | 否 | vsw-uf6adz52c2pxxxxxxxxxx | 只读实例的虚拟交换机ID。当InstanceNetworkType配置为空或VPC时需要传入。 |
PrivateIpAddress | String | 否 | 172.16.201.69 | 设置只读实例的内网IP,需要在指定交换机的IP地址范围内。系统默认通过VPCId和VSwitchId自动分配。 |
ResourceGroupId | String | 否 | rg-acfmyxxxxxxxxxx | 资源组ID。 |
Category | String | 否 | HighAvailability | 实例系列,取值:
说明 PostgreSQL云盘实例的只读实例为基础版,因此必须传入
Basic。
|
DBInstanceStorageType | String | 否 | local_ssd | 实例储存类型,取值:
说明 MySQL仅支持本地盘存储类型,SQL Server仅支持云盘存储类型。
|
DedicatedHostGroupId | String | 否 | dhg-4nxxxxxxx | 在专属集群内创建只读实例时指定专属集群ID。 |
TargetDedicatedHostIdForMaster | String | 否 | i-bpxxxxxxx1 | 在专属集群内创建只读实例时,指定主实例的主机ID。 |
GdnInstanceName | String | 否 | 无 | 备用参数。 |
TddlBizType | String | 否 | 无 | 备用参数。 |
TddlRegionConfig | String | 否 | 无 | 备用参数。 |
InstructionSetArch | String | 否 | 无 | 备用参数。 |
UsedTime | String | 否 | 1 | 指定购买时长。取值:
说明 若
PayType为
Prepaid,需要传入该参数。
|
Period | String | 否 | Month | 指定预付费实例为包年或者包月类型。取值:
|
AutoRenew | String | 否 | true | 实例是否自动续费,仅在创建包年包月实例时传入。取值:
说明
|
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
DBInstanceId | String | rr-uf6wjk5xxxxxxx | 创建的只读实例ID。 |
OrderId | String | 10078937xxxxx | 订单ID。 |
ConnectionString | String | rr-xxxxx.mysql.rds.aliyuncs.com | 创建的只读实例内网数据库连接地址。 |
Port | String | 3306 | 创建的只读实例内网数据库连接端口。 |
RequestId | String | 1E43AAE0-BEE8-43DA-860D-EAF2AA0724DC | 请求ID。 |
示例
请求示例
http(s)://rds.aliyuncs.com/?Action=CreateReadOnlyDBInstance &RegionId=cn-hangzhou &ZoneId=cn-hangzhou-b &DBInstanceId=rm-uf6wjk5xxxxxxx &DBInstanceClass=rds.mys2.small &DBInstanceStorage=20 &EngineVersion=5.6 &PayType=Postpaid &VPCId=vpc-uf6f7l4fg90xxxxxxxxxx &VSwitchId=vsw-uf6adz52c2pxxxxxxxxxx &<公共请求参数>
正常返回示例
XML
格式
<CreateReadOnlyDBInstanceResponse> <OrderId>10078937xxxxx</OrderId> <ConnectionString>rm-uf6wjk5xxxxxxx.mysql.rds.aliyuncs.com</ConnectionString> <DBInstanceId>rm-uf6wjk5xxxxxxx</DBInstanceId> <Port>3306</Port> <RequestId>1E43AAE0-BEE8-43DA-860D-EAF2AA0724DC</RequestId> </CreateReadOnlyDBInstanceResponse>
JSON
格式
{ "CreateReadOnlyDBInstanceResponse": { "OrderId": "10078937xxxxx", "ConnectionString": "rm-uf6wjk5xxxxxxx.mysql.rds.aliyuncs.com", "DBInstanceId": "rm-uf6wjk5xxxxxxx", "Port": 3306, "RequestId": "1E43AAE0-BEE8-43DA-860D-EAF2AA0724DC" } }
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | InvalidEngineVersion.Malformed | The specified parameter "EngineVersion" is not valid. | 指定EngineVersion参数无效。 |
400 | InvalidSecurityIPList.Malformed | The specified parameter "SecurityIPList" is not valid. | 指定的SecurityIPList参数无效。 |
400 | InvalidSecurityIPList.Duplicate | The Security IP address is not in the available range or occupied. | 指定的安全IP地址已被占用或不在有效区间内。 |
400 | InvalidParameter | The specified parameter "dbInstanceId" is not valid. | 指定dbInstanceId参数无效。 |
403 | OperationDenied.PrimaryDBInstanceStatus | The operation is not permitted due to status of primary instance. | 主实例状态不支持,实例处于运行态,才能做此操作。 |
400 | OperationDenied | VPC IP is in use, please check. | 该IP已经被使用,请您更换IP再重试。 |
404 | IncorrectDBInstanceConnType | Current DB instance conn type does not support this operation. | 当前DB实例连接类型不支持此操作。 |
400 | InvalidZoneId.NotSupported | The Specified vpc Zone not supported. | 当前可用区不支持生产 VPC 实例,请您更换可用区再试。 |
400 | CDDC.AvailableHostsNotEnoughInZone | Not enough available hosts are in the target zone. | 目标可用区里没有足够可分配主机. |
访问错误中心查看更多错误码。