调用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

数据库版本号。必须与主实例相同。

  • MySQL数据库取值:5.65.78.0
  • SQL Server数据库取值:2017_ent、2019_ent
PayType String Postpaid

付费类型,实取值:

  • Postpaid:后付费(按量付费)
  • Prepaid:预付费(包年包月)
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

只读实例的网络类型,取值:

  • VPC:专有网络
  • Classic:经典网络

默认创建专有网络实例,需要传入VPCIdVSwitchId

说明 只读实例的网络类型可以和主实例不同。
VPCId String vpc-uf6f7l4fg90xxxxxxxxxx

只读实例的专有网络VPC ID。当InstanceNetworkType配置为空或VPC时需要传入。

说明
  • 主实例的存储类型为本地SSD盘时,只读实例可以选择任意VPC网络。
  • 主实例的存储类型为云盘时,只读实例VPC必须和主实例保持一致。
VSwitchId String vsw-uf6adz52c2pxxxxxxxxxx

只读实例的虚拟交换机ID。当InstanceNetworkType配置为空或VPC时需要传入。

PrivateIpAddress String 172.16.201.69

设置只读实例的内网IP,需要在指定交换机的IP地址范围内。系统默认通过VPCIdVSwitchId自动分配。

ResourceGroupId String rg-acfmyxxxxxxxxxx

资源组ID。

Category String HighAvailability

实例系列,取值:

  • Basic:基础版
  • HighAvailability:高可用版(默认值)
  • AlwaysOn:集群版
  • Finance:金融版(仅中国站支持)
说明 PostgreSQL云盘实例的只读实例为基础版,因此必须传入 Basic
DBInstanceStorageType String local_ssd

实例储存类型,取值:

  • local_ssd/ephemeral_ssd:本地SSD盘
  • cloud_ssd:SSD云盘
  • cloud_essd:ESSD云盘
说明 MySQL仅支持本地盘存储类型,SQL Server仅支持云盘存储类型。
DedicatedHostGroupId String dhg-4nxxxxxxx

在专属集群内创建只读实例时指定专属集群ID。

TargetDedicatedHostIdForMaster String i-bpxxxxxxx1

在专属集群内创建只读实例时,指定主实例的主机ID。

GdnInstanceName String

备用参数。

TddlBizType String

备用参数。

TddlRegionConfig String

备用参数。

InstructionSetArch String

备用参数。

UsedTime String 1

指定购买时长。取值:

  • 当参数PeriodYear时,UsedTime取值为1~5
  • 当参数PeriodMonth时,UsedTime取值为1~9
说明PayTypePrepaid,需要传入该参数。
Period String Month

指定预付费实例为包年或者包月类型。取值:

  • Year:包年
  • Month:包月
AutoRenew String true

实例是否自动续费,仅在创建包年包月实例时传入。取值:

  • true:是
  • false:否
说明
  • 按月购买,则自动续费周期为1个月。
  • 按年购买,则自动续费周期为1年。

返回数据

名称 类型 示例值 描述
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. 目标可用区里没有足够可分配主机.

访问错误中心查看更多错误码。