# frozen_string_literal: true # Copyright (c) 2017-2018 THL A29 Limited, a Tencent company. All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. module TencentCloud module Mongodb module V20190725 # AssignProject请求参数结构体 class AssignProjectRequest < TencentCloud::Common::AbstractModel # @param InstanceIds: 实例ID列表,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 # @type InstanceIds: Array # @param ProjectId: 项目ID,用户已创建项目的唯一ID,非自定义 # @type ProjectId: Integer attr_accessor :InstanceIds, :ProjectId def initialize(instanceids=nil, projectid=nil) @InstanceIds = instanceids @ProjectId = projectid end def deserialize(params) @InstanceIds = params['InstanceIds'] @ProjectId = params['ProjectId'] end end # AssignProject返回参数结构体 class AssignProjectResponse < TencentCloud::Common::AbstractModel # @param FlowIds: 返回的异步任务ID列表 # @type FlowIds: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FlowIds, :RequestId def initialize(flowids=nil, requestid=nil) @FlowIds = flowids @RequestId = requestid end def deserialize(params) @FlowIds = params['FlowIds'] @RequestId = params['RequestId'] end end # 用户权限 class Auth < TencentCloud::Common::AbstractModel # @param Mask: 当前账号具有的权限信息。 # @type Mask: Integer # @param NameSpace: 指具有当前账号权限的数据库名。 # # @type NameSpace: String attr_accessor :Mask, :NameSpace def initialize(mask=nil, namespace=nil) @Mask = mask @NameSpace = namespace end def deserialize(params) @Mask = params['Mask'] @NameSpace = params['NameSpace'] end end # 备份下载任务 class BackupDownloadTask < TencentCloud::Common::AbstractModel # @param CreateTime: 任务创建时间 # @type CreateTime: String # @param BackupName: 备份文件名 # @type BackupName: String # @param ReplicaSetId: 分片名称 # @type ReplicaSetId: String # @param BackupSize: 备份数据大小,单位为字节 # @type BackupSize: Integer # @param Status: 任务状态。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试 # @type Status: Integer # @param Percent: 任务进度百分比 # @type Percent: Integer # @param TimeSpend: 耗时,单位为秒 # @type TimeSpend: Integer # @param Url: 备份数据下载链接 # @type Url: String # @param BackupMethod: 备份文件备份类型,0-逻辑备份,1-物理备份 # @type BackupMethod: Integer # @param BackupDesc: 发起备份时指定的备注信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type BackupDesc: String attr_accessor :CreateTime, :BackupName, :ReplicaSetId, :BackupSize, :Status, :Percent, :TimeSpend, :Url, :BackupMethod, :BackupDesc def initialize(createtime=nil, backupname=nil, replicasetid=nil, backupsize=nil, status=nil, percent=nil, timespend=nil, url=nil, backupmethod=nil, backupdesc=nil) @CreateTime = createtime @BackupName = backupname @ReplicaSetId = replicasetid @BackupSize = backupsize @Status = status @Percent = percent @TimeSpend = timespend @Url = url @BackupMethod = backupmethod @BackupDesc = backupdesc end def deserialize(params) @CreateTime = params['CreateTime'] @BackupName = params['BackupName'] @ReplicaSetId = params['ReplicaSetId'] @BackupSize = params['BackupSize'] @Status = params['Status'] @Percent = params['Percent'] @TimeSpend = params['TimeSpend'] @Url = params['Url'] @BackupMethod = params['BackupMethod'] @BackupDesc = params['BackupDesc'] end end # 创建备份下载任务结果 class BackupDownloadTaskStatus < TencentCloud::Common::AbstractModel # @param ReplicaSetId: 分片名 # @type ReplicaSetId: String # @param Status: 任务当前状态。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试 # @type Status: Integer attr_accessor :ReplicaSetId, :Status def initialize(replicasetid=nil, status=nil) @ReplicaSetId = replicasetid @Status = status end def deserialize(params) @ReplicaSetId = params['ReplicaSetId'] @Status = params['Status'] end end # 备份信息 class BackupInfo < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID # @type InstanceId: String # @param BackupType: 备份方式,0-自动备份,1-手动备份 # @type BackupType: Integer # @param BackupName: 备份名称 # @type BackupName: String # @param BackupDesc: 备份备注 # 注意:此字段可能返回 null,表示取不到有效值。 # @type BackupDesc: String # @param BackupSize: 备份文件大小,单位KB # 注意:此字段可能返回 null,表示取不到有效值。 # @type BackupSize: Integer # @param StartTime: 备份开始时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type StartTime: String # @param EndTime: 备份结束时间 # 注意:此字段可能返回 null,表示取不到有效值。 # @type EndTime: String # @param Status: 备份状态,1-备份中,2-备份成功 # @type Status: Integer # @param BackupMethod: 备份方法,0-逻辑备份,1-物理备份 # @type BackupMethod: Integer attr_accessor :InstanceId, :BackupType, :BackupName, :BackupDesc, :BackupSize, :StartTime, :EndTime, :Status, :BackupMethod def initialize(instanceid=nil, backuptype=nil, backupname=nil, backupdesc=nil, backupsize=nil, starttime=nil, endtime=nil, status=nil, backupmethod=nil) @InstanceId = instanceid @BackupType = backuptype @BackupName = backupname @BackupDesc = backupdesc @BackupSize = backupsize @StartTime = starttime @EndTime = endtime @Status = status @BackupMethod = backupmethod end def deserialize(params) @InstanceId = params['InstanceId'] @BackupType = params['BackupType'] @BackupName = params['BackupName'] @BackupDesc = params['BackupDesc'] @BackupSize = params['BackupSize'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] @Status = params['Status'] @BackupMethod = params['BackupMethod'] end end # 客户端连接信息,包括客户端IP和连接数 class ClientConnection < TencentCloud::Common::AbstractModel # @param IP: 连接的客户端IP # @type IP: String # @param Count: 对应客户端IP的连接数 # @type Count: Integer # @param InternalService: 是否为内部ip # @type InternalService: Boolean attr_accessor :IP, :Count, :InternalService def initialize(ip=nil, count=nil, internalservice=nil) @IP = ip @Count = count @InternalService = internalservice end def deserialize(params) @IP = params['IP'] @Count = params['Count'] @InternalService = params['InternalService'] end end # CreateAccountUser请求参数结构体 class CreateAccountUserRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例 ID。 # @type InstanceId: String # @param UserName: 新账号名称。其格式要求如下: # @type UserName: String # @param Password: 新账号密码。密码复杂度要求如下: # @type Password: String # @param MongoUserPassword: mongouser 账号对应的密码。mongouser 为系统默认账号,即为创建实例时,设置的密码。 # @type MongoUserPassword: String # @param UserDesc: 账号备注信息。 # @type UserDesc: String # @param AuthRole: 账号的读写权限信息。 # @type AuthRole: Array attr_accessor :InstanceId, :UserName, :Password, :MongoUserPassword, :UserDesc, :AuthRole def initialize(instanceid=nil, username=nil, password=nil, mongouserpassword=nil, userdesc=nil, authrole=nil) @InstanceId = instanceid @UserName = username @Password = password @MongoUserPassword = mongouserpassword @UserDesc = userdesc @AuthRole = authrole end def deserialize(params) @InstanceId = params['InstanceId'] @UserName = params['UserName'] @Password = params['Password'] @MongoUserPassword = params['MongoUserPassword'] @UserDesc = params['UserDesc'] unless params['AuthRole'].nil? @AuthRole = [] params['AuthRole'].each do |i| auth_tmp = Auth.new auth_tmp.deserialize(i) @AuthRole << auth_tmp end end end end # CreateAccountUser返回参数结构体 class CreateAccountUserResponse < TencentCloud::Common::AbstractModel # @param FlowId: 创建任务ID。 # @type FlowId: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :FlowId, :RequestId def initialize(flowid=nil, requestid=nil) @FlowId = flowid @RequestId = requestid end def deserialize(params) @FlowId = params['FlowId'] @RequestId = params['RequestId'] end end # CreateBackupDBInstance请求参数结构体 class CreateBackupDBInstanceRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例id # @type InstanceId: String # @param BackupMethod: 0-逻辑备份,1-物理备份 # @type BackupMethod: Integer # @param BackupRemark: 备份备注 # @type BackupRemark: String attr_accessor :InstanceId, :BackupMethod, :BackupRemark def initialize(instanceid=nil, backupmethod=nil, backupremark=nil) @InstanceId = instanceid @BackupMethod = backupmethod @BackupRemark = backupremark end def deserialize(params) @InstanceId = params['InstanceId'] @BackupMethod = params['BackupMethod'] @BackupRemark = params['BackupRemark'] end end # CreateBackupDBInstance返回参数结构体 class CreateBackupDBInstanceResponse < TencentCloud::Common::AbstractModel # @param AsyncRequestId: 查询备份流程的状态 # @type AsyncRequestId: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :AsyncRequestId, :RequestId def initialize(asyncrequestid=nil, requestid=nil) @AsyncRequestId = asyncrequestid @RequestId = requestid end def deserialize(params) @AsyncRequestId = params['AsyncRequestId'] @RequestId = params['RequestId'] end end # CreateBackupDownloadTask请求参数结构体 class CreateBackupDownloadTaskRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 # @type InstanceId: String # @param BackupName: 要下载的备份文件名,可通过DescribeDBBackups接口获取。 # @type BackupName: String # @param BackupSets: 指定要下载的副本集的节点名称 或 分片集群的分片名称列表。 # 如副本集cmgo-p8vnipr5,示例(固定取值):BackupSets.0=cmgo-p8vnipr5_0,可下载全量数据。 # 如分片集群cmgo-p8vnipr5,示例:BackupSets.0=cmgo-p8vnipr5_0&BackupSets.1=cmgo-p8vnipr5_1,即下载分片0和分片1的数据,分片集群如需全量下载,请按示例方式传入全部分片名称。 # @type BackupSets: Array attr_accessor :InstanceId, :BackupName, :BackupSets def initialize(instanceid=nil, backupname=nil, backupsets=nil) @InstanceId = instanceid @BackupName = backupname @BackupSets = backupsets end def deserialize(params) @InstanceId = params['InstanceId'] @BackupName = params['BackupName'] unless params['BackupSets'].nil? @BackupSets = [] params['BackupSets'].each do |i| replicasetinfo_tmp = ReplicaSetInfo.new replicasetinfo_tmp.deserialize(i) @BackupSets << replicasetinfo_tmp end end end end # CreateBackupDownloadTask返回参数结构体 class CreateBackupDownloadTaskResponse < TencentCloud::Common::AbstractModel # @param Tasks: 下载任务状态 # @type Tasks: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Tasks, :RequestId def initialize(tasks=nil, requestid=nil) @Tasks = tasks @RequestId = requestid end def deserialize(params) unless params['Tasks'].nil? @Tasks = [] params['Tasks'].each do |i| backupdownloadtaskstatus_tmp = BackupDownloadTaskStatus.new backupdownloadtaskstatus_tmp.deserialize(i) @Tasks << backupdownloadtaskstatus_tmp end end @RequestId = params['RequestId'] end end # CreateDBInstanceHour请求参数结构体 class CreateDBInstanceHourRequest < TencentCloud::Common::AbstractModel # @param Memory: 实例内存大小,单位:GB。 # @type Memory: Integer # @param Volume: 实例硬盘大小,单位:GB。 # @type Volume: Integer # @param ReplicateSetNum: 指副本集数量。 # - 创建副本集实例,该参数只能为1。 # - 创建分片实例,指分片的数量。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 # @type ReplicateSetNum: Integer # @param NodeNum: 指每个副本集内节点个数。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 # @type NodeNum: Integer # @param MongoVersion: 指版本信息。具体售卖规格,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 # - MONGO_36_WT:MongoDB 3.6 WiredTiger存储引擎版本。 # - MONGO_40_WT:MongoDB 4.0 WiredTiger存储引擎版本。 # - MONGO_42_WT:MongoDB 4.2 WiredTiger存储引擎版本。 # - MONGO_44_WT:MongoDB 4.4 WiredTiger存储引擎版本。 # @type MongoVersion: String # @param MachineCode: 机器类型。 # - HIO:高IO型。 # - HIO10G:高IO万兆。 # @type MachineCode: String # @param GoodsNum: 实例数量,最小值1,最大值为10。 # @type GoodsNum: Integer # @param Zone: 可用区信息,输入格式如:ap-guangzhou-2。 # - 具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567) 获取。 # - 该参数为主可用区,如果多可用区部署,Zone必须是AvailabilityZoneList中的一个。 # @type Zone: String # @param ClusterType: 实例架构类型。 # - REPLSET:副本集。 # - SHARD:分片集群。 # @type ClusterType: String # @param VpcId: 私有网络ID,如果不设置该参数,则默认选择基础网络。 # @type VpcId: String # @param SubnetId: 私有网络下的子网 ID,如果配置参数 VpcId,则 SubnetId必须配置。 # @type SubnetId: String # @param Password: 实例密码。 # - 不设置该参数,则默认密码格式为:实例ID+@+主账户uin。例如:实例 ID 为cmgo-higv73ed,UIN 为100000001,则默认密码为:cmgo-higv73ed@100000001。 # - 自定义密码长度为8-32个字符,至少包含字母、数字和字符(!@#%^*()_)中的两种。 # @type Password: String # @param ProjectId: 项目ID。若不设置该参数,则为默认项目。 # @type ProjectId: Integer # @param Tags: 实例标签信息。 # @type Tags: Array # @param Clone: 实例类型。 # - 1:正式实例。 # - 3:只读实例。 # - 4:灾备实例。 # @type Clone: Integer # @param Father: 父实例 ID。当参数**Clone**为3或者4时,即实例为只读或灾备实例时,该参数必须配置。 # @type Father: String # @param SecurityGroup: 安全组。 # @type SecurityGroup: Array # @param RestoreTime: 克隆实例回档时间。 # - 若为克隆实例,则必须配置该参数。输入格式示例:2021-08-13 16:30:00。 # - 回档时间范围:仅能回档7天内时间点的数据。 # @type RestoreTime: String # @param InstanceName: 实例名称。仅支持长度为60个字符的中文、英文、数字、下划线_、分隔符- 。 # @type InstanceName: String # @param AvailabilityZoneList: 多可用区部署的节点列表。具体信息,请通过接口 [DescribeSpecInfo](https://cloud.tencent.com/document/product/240/38567)获取。 # - 多可用区部署节点只能部署在3个不同可用区。不支持将集群的大多数节点部署在同一个可用区。例如:3节点集群不支持2个节点部署在同一个区。 # - 不支持4.2及以上版本。 # - 不支持只读灾备实例。 # - 不能选择基础网络。 # @type AvailabilityZoneList: Array # @param MongosCpu: Mongos CPU 核数。 # - 购买MongoDB 3.6 WiredTiger存储引擎版本以上的分片集群时,可选择性配置该参数。 # - 若不配置该参数,则根据Mongod节点规格默认适配 Mongos 规格,默认规格免费。 # @type MongosCpu: Integer # @param MongosMemory: Mongos 内存大小。 # - 购买MongoDB 3.6 WiredTiger存储引擎版本以上的分片集群时,可选择性配置该参数。 # - 若不配置该参数,则根据Mongod节点规格默认适配 Mongos 规格,默认规格免费。 # @type MongosMemory: Integer # @param MongosNodeNum: Mongos 数量。 # - 购买MongoDB 3.6 WiredTiger存储引擎版本以上的分片集群时,可选择性配置该参数。 # - 若不配置该参数,则根据Mongod节点规格默认适配 Mongos 规格,默认规格免费。 # @type MongosNodeNum: Integer # @param ReadonlyNodeNum: 只读节点数量,最大不超过7个。 # @type ReadonlyNodeNum: Integer # @param ReadonlyNodeAvailabilityZoneList: 指只读节点所属可用区。跨可用区部署实例,参数**ReadonlyNodeNum**不为**0**时,必须配置该参数。 # @type ReadonlyNodeAvailabilityZoneList: Array # @param HiddenZone: Hidden节点所属可用区。跨可用区部署实例,必须配置该参数。 # @type HiddenZone: String attr_accessor :Memory, :Volume, :ReplicateSetNum, :NodeNum, :MongoVersion, :MachineCode, :GoodsNum, :Zone, :ClusterType, :VpcId, :SubnetId, :Password, :ProjectId, :Tags, :Clone, :Father, :SecurityGroup, :RestoreTime, :InstanceName, :AvailabilityZoneList, :MongosCpu, :MongosMemory, :MongosNodeNum, :ReadonlyNodeNum, :ReadonlyNodeAvailabilityZoneList, :HiddenZone def initialize(memory=nil, volume=nil, replicatesetnum=nil, nodenum=nil, mongoversion=nil, machinecode=nil, goodsnum=nil, zone=nil, clustertype=nil, vpcid=nil, subnetid=nil, password=nil, projectid=nil, tags=nil, clone=nil, father=nil, securitygroup=nil, restoretime=nil, instancename=nil, availabilityzonelist=nil, mongoscpu=nil, mongosmemory=nil, mongosnodenum=nil, readonlynodenum=nil, readonlynodeavailabilityzonelist=nil, hiddenzone=nil) @Memory = memory @Volume = volume @ReplicateSetNum = replicatesetnum @NodeNum = nodenum @MongoVersion = mongoversion @MachineCode = machinecode @GoodsNum = goodsnum @Zone = zone @ClusterType = clustertype @VpcId = vpcid @SubnetId = subnetid @Password = password @ProjectId = projectid @Tags = tags @Clone = clone @Father = father @SecurityGroup = securitygroup @RestoreTime = restoretime @InstanceName = instancename @AvailabilityZoneList = availabilityzonelist @MongosCpu = mongoscpu @MongosMemory = mongosmemory @MongosNodeNum = mongosnodenum @ReadonlyNodeNum = readonlynodenum @ReadonlyNodeAvailabilityZoneList = readonlynodeavailabilityzonelist @HiddenZone = hiddenzone end def deserialize(params) @Memory = params['Memory'] @Volume = params['Volume'] @ReplicateSetNum = params['ReplicateSetNum'] @NodeNum = params['NodeNum'] @MongoVersion = params['MongoVersion'] @MachineCode = params['MachineCode'] @GoodsNum = params['GoodsNum'] @Zone = params['Zone'] @ClusterType = params['ClusterType'] @VpcId = params['VpcId'] @SubnetId = params['SubnetId'] @Password = params['Password'] @ProjectId = params['ProjectId'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| taginfo_tmp = TagInfo.new taginfo_tmp.deserialize(i) @Tags << taginfo_tmp end end @Clone = params['Clone'] @Father = params['Father'] @SecurityGroup = params['SecurityGroup'] @RestoreTime = params['RestoreTime'] @InstanceName = params['InstanceName'] @AvailabilityZoneList = params['AvailabilityZoneList'] @MongosCpu = params['MongosCpu'] @MongosMemory = params['MongosMemory'] @MongosNodeNum = params['MongosNodeNum'] @ReadonlyNodeNum = params['ReadonlyNodeNum'] @ReadonlyNodeAvailabilityZoneList = params['ReadonlyNodeAvailabilityZoneList'] @HiddenZone = params['HiddenZone'] end end # CreateDBInstanceHour返回参数结构体 class CreateDBInstanceHourResponse < TencentCloud::Common::AbstractModel # @param DealId: 订单ID。 # @type DealId: String # @param InstanceIds: 创建的实例ID列表。 # @type InstanceIds: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :DealId, :InstanceIds, :RequestId def initialize(dealid=nil, instanceids=nil, requestid=nil) @DealId = dealid @InstanceIds = instanceids @RequestId = requestid end def deserialize(params) @DealId = params['DealId'] @InstanceIds = params['InstanceIds'] @RequestId = params['RequestId'] end end # CreateDBInstance请求参数结构体 class CreateDBInstanceRequest < TencentCloud::Common::AbstractModel # @param NodeNum: 每个副本集内节点个数,具体参照查询云数据库的售卖规格返回参数 # @type NodeNum: Integer # @param Memory: 实例内存大小,单位:GB # @type Memory: Integer # @param Volume: 实例硬盘大小,单位:GB # @type Volume: Integer # @param MongoVersion: 版本号,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果。参数与版本对应关系是MONGO_3_WT:MongoDB 3.2 WiredTiger存储引擎版本,MONGO_3_ROCKS:MongoDB 3.2 RocksDB存储引擎版本,MONGO_36_WT:MongoDB 3.6 WiredTiger存储引擎版本,MONGO_40_WT:MongoDB 4.0 WiredTiger存储引擎版本,MONGO_42_WT:MongoDB 4.2 WiredTiger存储引擎版本 # @type MongoVersion: String # @param GoodsNum: 实例数量, 最小值1,最大值为10 # @type GoodsNum: Integer # @param Zone: 实例所属区域名称,格式如:ap-guangzhou-2。注:此参数填写的是主可用区,如果选择多可用区部署,Zone必须是AvailabilityZoneList中的一个 # @type Zone: String # @param Period: 实例时长,单位:月,可选值包括 [1,2,3,4,5,6,7,8,9,10,11,12,24,36] # @type Period: Integer # @param MachineCode: 机器类型,HIO:高IO型;HIO10G:高IO万兆型;STDS5:标准型 # @type MachineCode: String # @param ClusterType: 实例类型,REPLSET-副本集,SHARD-分片集群,STANDALONE-单节点 # @type ClusterType: String # @param ReplicateSetNum: 副本集个数,创建副本集实例时,该参数必须设置为1;创建分片实例时,具体参照查询云数据库的售卖规格返回参数;若为单节点实例,该参数设置为0 # @type ReplicateSetNum: Integer # @param ProjectId: 项目ID,不设置为默认项目 # @type ProjectId: Integer # @param VpcId: 私有网络 ID,如果不传则默认选择基础网络,请使用 查询私有网络列表 # @type VpcId: String # @param SubnetId: 私有网络下的子网 ID,如果设置了 UniqVpcId,则 UniqSubnetId 必填,请使用 查询子网列表 # @type SubnetId: String # @param Password: 实例密码,不设置该参数则默认密码规则为 实例ID+"@"+主账户uin。举例实例id为cmgo-higv73ed,uin为100000001,则默认密码为"cmgo-higv73ed@100000001"。 自定义密码格式为8-32个字符长度,至少包含字母、数字和字符(!@#%^*()_)中的两种 # @type Password: String # @param Tags: 实例标签信息 # @type Tags: Array # @param AutoRenewFlag: 自动续费标记,可选值为:0 - 不自动续费;1 - 自动续费。默认为不自动续费 # @type AutoRenewFlag: Integer # @param AutoVoucher: 是否自动选择代金券,可选值为:1 - 是;0 - 否; 默认为0 # @type AutoVoucher: Integer # @param Clone: 1:正式实例,2:临时实例,3:只读实例,4:灾备实例,5:克隆实例 # @type Clone: Integer # @param Father: 若是只读,灾备实例或克隆实例,Father必须填写,即主实例ID # @type Father: String # @param SecurityGroup: 安全组 # @type SecurityGroup: Array # @param RestoreTime: 克隆实例回档时间。若是克隆实例,则必须填写,格式:2021-08-13 16:30:00。注:只能回档7天内的时间点 # @type RestoreTime: String # @param InstanceName: 实例名称。注:名称只支持长度为60个字符的中文、英文、数字、下划线_、分隔符- # @type InstanceName: String # @param AvailabilityZoneList: 多可用区部署的节点列表,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果。注:1、多可用区部署节点只能部署在3个不同可用区;2、为了保障跨可用区切换,不支持将集群的大多数节点部署在同一个可用区(如3节点集群不支持2个节点部署在同一个区);3、不支持4.2及以上版本;4、不支持只读灾备实例;5、不能选择基础网络 # @type AvailabilityZoneList: Array # @param MongosCpu: mongos cpu数量,购买MongoDB 4.2 WiredTiger存储引擎版本的分片集群时必须填写,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果 # @type MongosCpu: Integer # @param MongosMemory: mongos 内存大小,购买MongoDB 4.2 WiredTiger存储引擎版本的分片集群时必须填写,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果 # @type MongosMemory: Integer # @param MongosNodeNum: mongos 数量,购买MongoDB 4.2 WiredTiger存储引擎版本的分片集群时必须填写,具体支持的售卖版本请参照查询云数据库的售卖规格(DescribeSpecInfo)返回结果。注:为了保障高可用,最低需要购买3个mongos,上限为32个 # @type MongosNodeNum: Integer # @param ReadonlyNodeNum: 只读节点数量,最大不超过7个 # @type ReadonlyNodeNum: Integer # @param ReadonlyNodeAvailabilityZoneList: 只读节点部署可用区 # @type ReadonlyNodeAvailabilityZoneList: Array # @param HiddenZone: Hidden节点所在的可用区,跨可用区实例必传 # @type HiddenZone: String attr_accessor :NodeNum, :Memory, :Volume, :MongoVersion, :GoodsNum, :Zone, :Period, :MachineCode, :ClusterType, :ReplicateSetNum, :ProjectId, :VpcId, :SubnetId, :Password, :Tags, :AutoRenewFlag, :AutoVoucher, :Clone, :Father, :SecurityGroup, :RestoreTime, :InstanceName, :AvailabilityZoneList, :MongosCpu, :MongosMemory, :MongosNodeNum, :ReadonlyNodeNum, :ReadonlyNodeAvailabilityZoneList, :HiddenZone def initialize(nodenum=nil, memory=nil, volume=nil, mongoversion=nil, goodsnum=nil, zone=nil, period=nil, machinecode=nil, clustertype=nil, replicatesetnum=nil, projectid=nil, vpcid=nil, subnetid=nil, password=nil, tags=nil, autorenewflag=nil, autovoucher=nil, clone=nil, father=nil, securitygroup=nil, restoretime=nil, instancename=nil, availabilityzonelist=nil, mongoscpu=nil, mongosmemory=nil, mongosnodenum=nil, readonlynodenum=nil, readonlynodeavailabilityzonelist=nil, hiddenzone=nil) @NodeNum = nodenum @Memory = memory @Volume = volume @MongoVersion = mongoversion @GoodsNum = goodsnum @Zone = zone @Period = period @MachineCode = machinecode @ClusterType = clustertype @ReplicateSetNum = replicatesetnum @ProjectId = projectid @VpcId = vpcid @SubnetId = subnetid @Password = password @Tags = tags @AutoRenewFlag = autorenewflag @AutoVoucher = autovoucher @Clone = clone @Father = father @SecurityGroup = securitygroup @RestoreTime = restoretime @InstanceName = instancename @AvailabilityZoneList = availabilityzonelist @MongosCpu = mongoscpu @MongosMemory = mongosmemory @MongosNodeNum = mongosnodenum @ReadonlyNodeNum = readonlynodenum @ReadonlyNodeAvailabilityZoneList = readonlynodeavailabilityzonelist @HiddenZone = hiddenzone end def deserialize(params) @NodeNum = params['NodeNum'] @Memory = params['Memory'] @Volume = params['Volume'] @MongoVersion = params['MongoVersion'] @GoodsNum = params['GoodsNum'] @Zone = params['Zone'] @Period = params['Period'] @MachineCode = params['MachineCode'] @ClusterType = params['ClusterType'] @ReplicateSetNum = params['ReplicateSetNum'] @ProjectId = params['ProjectId'] @VpcId = params['VpcId'] @SubnetId = params['SubnetId'] @Password = params['Password'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| taginfo_tmp = TagInfo.new taginfo_tmp.deserialize(i) @Tags << taginfo_tmp end end @AutoRenewFlag = params['AutoRenewFlag'] @AutoVoucher = params['AutoVoucher'] @Clone = params['Clone'] @Father = params['Father'] @SecurityGroup = params['SecurityGroup'] @RestoreTime = params['RestoreTime'] @InstanceName = params['InstanceName'] @AvailabilityZoneList = params['AvailabilityZoneList'] @MongosCpu = params['MongosCpu'] @MongosMemory = params['MongosMemory'] @MongosNodeNum = params['MongosNodeNum'] @ReadonlyNodeNum = params['ReadonlyNodeNum'] @ReadonlyNodeAvailabilityZoneList = params['ReadonlyNodeAvailabilityZoneList'] @HiddenZone = params['HiddenZone'] end end # CreateDBInstance返回参数结构体 class CreateDBInstanceResponse < TencentCloud::Common::AbstractModel # @param DealId: 订单ID # @type DealId: String # @param InstanceIds: 创建的实例ID列表 # @type InstanceIds: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :DealId, :InstanceIds, :RequestId def initialize(dealid=nil, instanceids=nil, requestid=nil) @DealId = dealid @InstanceIds = instanceids @RequestId = requestid end def deserialize(params) @DealId = params['DealId'] @InstanceIds = params['InstanceIds'] @RequestId = params['RequestId'] end end # 云数据库实例当前操作 class CurrentOp < TencentCloud::Common::AbstractModel # @param OpId: 操作序号 # 注意:此字段可能返回 null,表示取不到有效值。 # @type OpId: Integer # @param Ns: 操作所在的命名空间,形式如db.collection # 注意:此字段可能返回 null,表示取不到有效值。 # @type Ns: String # @param Query: 操作执行语句 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Query: String # @param Op: 操作类型,可能的取值:aggregate、count、delete、distinct、find、findAndModify、getMore、insert、mapReduce、update和command # 注意:此字段可能返回 null,表示取不到有效值。 # @type Op: String # @param ReplicaSetName: 操作所在的分片名称 # @type ReplicaSetName: String # @param State: 筛选条件,节点状态,可能的取值为:Primary、Secondary # 注意:此字段可能返回 null,表示取不到有效值。 # @type State: String # @param Operation: 操作详细信息 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Operation: String # @param NodeName: 操作所在的节点名称 # @type NodeName: String # @param MicrosecsRunning: 操作已执行时间(ms) # 注意:此字段可能返回 null,表示取不到有效值。 # @type MicrosecsRunning: Integer attr_accessor :OpId, :Ns, :Query, :Op, :ReplicaSetName, :State, :Operation, :NodeName, :MicrosecsRunning def initialize(opid=nil, ns=nil, query=nil, op=nil, replicasetname=nil, state=nil, operation=nil, nodename=nil, microsecsrunning=nil) @OpId = opid @Ns = ns @Query = query @Op = op @ReplicaSetName = replicasetname @State = state @Operation = operation @NodeName = nodename @MicrosecsRunning = microsecsrunning end def deserialize(params) @OpId = params['OpId'] @Ns = params['Ns'] @Query = params['Query'] @Op = params['Op'] @ReplicaSetName = params['ReplicaSetName'] @State = params['State'] @Operation = params['Operation'] @NodeName = params['NodeName'] @MicrosecsRunning = params['MicrosecsRunning'] end end # 实例信息 class DBInstanceInfo < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID # @type InstanceId: String # @param Region: 地域信息 # @type Region: String attr_accessor :InstanceId, :Region def initialize(instanceid=nil, region=nil) @InstanceId = instanceid @Region = region end def deserialize(params) @InstanceId = params['InstanceId'] @Region = params['Region'] end end # 数据库实例价格 class DBInstancePrice < TencentCloud::Common::AbstractModel # @param UnitPrice: 单价 # 注意:此字段可能返回 null,表示取不到有效值。 # @type UnitPrice: Float # @param OriginalPrice: 原价 # @type OriginalPrice: Float # @param DiscountPrice: 折扣加 # @type DiscountPrice: Float attr_accessor :UnitPrice, :OriginalPrice, :DiscountPrice def initialize(unitprice=nil, originalprice=nil, discountprice=nil) @UnitPrice = unitprice @OriginalPrice = originalprice @DiscountPrice = discountprice end def deserialize(params) @UnitPrice = params['UnitPrice'] @OriginalPrice = params['OriginalPrice'] @DiscountPrice = params['DiscountPrice'] end end # DescribeAccountUsers请求参数结构体 class DescribeAccountUsersRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID。 # @type InstanceId: String attr_accessor :InstanceId def initialize(instanceid=nil) @InstanceId = instanceid end def deserialize(params) @InstanceId = params['InstanceId'] end end # DescribeAccountUsers返回参数结构体 class DescribeAccountUsersResponse < TencentCloud::Common::AbstractModel # @param Users: 实例账号列表。 # @type Users: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Users, :RequestId def initialize(users=nil, requestid=nil) @Users = users @RequestId = requestid end def deserialize(params) unless params['Users'].nil? @Users = [] params['Users'].each do |i| userinfo_tmp = UserInfo.new userinfo_tmp.deserialize(i) @Users << userinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeAsyncRequestInfo请求参数结构体 class DescribeAsyncRequestInfoRequest < TencentCloud::Common::AbstractModel # @param AsyncRequestId: 异步请求Id,涉及到异步流程的接口返回,如CreateBackupDBInstance # @type AsyncRequestId: String attr_accessor :AsyncRequestId def initialize(asyncrequestid=nil) @AsyncRequestId = asyncrequestid end def deserialize(params) @AsyncRequestId = params['AsyncRequestId'] end end # DescribeAsyncRequestInfo返回参数结构体 class DescribeAsyncRequestInfoResponse < TencentCloud::Common::AbstractModel # @param Status: 状态。返回参数有:initial-初始化、running-运行中、paused-任务执行失败,已暂停、undoed-任务执行失败,已回滚、failed-任务执行失败, 已终止、success-成功 # @type Status: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Status, :RequestId def initialize(status=nil, requestid=nil) @Status = status @RequestId = requestid end def deserialize(params) @Status = params['Status'] @RequestId = params['RequestId'] end end # DescribeBackupDownloadTask请求参数结构体 class DescribeBackupDownloadTaskRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 # @type InstanceId: String # @param BackupName: 备份文件名,用来过滤指定文件的下载任务 # @type BackupName: String # @param StartTime: 指定查询时间范围内的任务,StartTime指定开始时间,不填默认不限制开始时间 # @type StartTime: String # @param EndTime: 指定查询时间范围内的任务,EndTime指定截止时间,不填默认不限制截止时间 # @type EndTime: String # @param Limit: 此次查询返回的条数,取值范围为1-100,默认为20 # @type Limit: Integer # @param Offset: 指定此次查询返回的页数,默认为0 # @type Offset: Integer # @param OrderBy: 排序字段,取值为createTime,finishTime两种,默认为createTime # @type OrderBy: String # @param OrderByType: 排序方式,取值为asc,desc两种,默认desc # @type OrderByType: String # @param Status: 根据任务状态过滤。0-等待执行,1-正在下载,2-下载完成,3-下载失败,4-等待重试。不填默认返回所有类型 # @type Status: Array attr_accessor :InstanceId, :BackupName, :StartTime, :EndTime, :Limit, :Offset, :OrderBy, :OrderByType, :Status def initialize(instanceid=nil, backupname=nil, starttime=nil, endtime=nil, limit=nil, offset=nil, orderby=nil, orderbytype=nil, status=nil) @InstanceId = instanceid @BackupName = backupname @StartTime = starttime @EndTime = endtime @Limit = limit @Offset = offset @OrderBy = orderby @OrderByType = orderbytype @Status = status end def deserialize(params) @InstanceId = params['InstanceId'] @BackupName = params['BackupName'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] @Limit = params['Limit'] @Offset = params['Offset'] @OrderBy = params['OrderBy'] @OrderByType = params['OrderByType'] @Status = params['Status'] end end # DescribeBackupDownloadTask返回参数结构体 class DescribeBackupDownloadTaskResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 满足查询条件的所有条数 # @type TotalCount: Integer # @param Tasks: 下载任务列表 # @type Tasks: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :Tasks, :RequestId def initialize(totalcount=nil, tasks=nil, requestid=nil) @TotalCount = totalcount @Tasks = tasks @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['Tasks'].nil? @Tasks = [] params['Tasks'].each do |i| backupdownloadtask_tmp = BackupDownloadTask.new backupdownloadtask_tmp.deserialize(i) @Tasks << backupdownloadtask_tmp end end @RequestId = params['RequestId'] end end # DescribeClientConnections请求参数结构体 class DescribeClientConnectionsRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 # @type InstanceId: String # @param Limit: 单次请求返回的数量,最小值为1,最大值为1000,默认值为1000。 # @type Limit: Integer # @param Offset: 偏移量,默认值为0。 # @type Offset: Integer attr_accessor :InstanceId, :Limit, :Offset def initialize(instanceid=nil, limit=nil, offset=nil) @InstanceId = instanceid @Limit = limit @Offset = offset end def deserialize(params) @InstanceId = params['InstanceId'] @Limit = params['Limit'] @Offset = params['Offset'] end end # DescribeClientConnections返回参数结构体 class DescribeClientConnectionsResponse < TencentCloud::Common::AbstractModel # @param Clients: 客户端连接信息,包括客户端IP和对应IP的连接数量。 # @type Clients: Array # @param TotalCount: 满足条件的记录总条数,可用于分页查询。 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Clients, :TotalCount, :RequestId def initialize(clients=nil, totalcount=nil, requestid=nil) @Clients = clients @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['Clients'].nil? @Clients = [] params['Clients'].each do |i| clientconnection_tmp = ClientConnection.new clientconnection_tmp.deserialize(i) @Clients << clientconnection_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeCurrentOp请求参数结构体 class DescribeCurrentOpRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 # @type InstanceId: String # @param Ns: 筛选条件,操作所属的命名空间namespace,格式为db.collection # @type Ns: String # @param MillisecondRunning: 筛选条件,操作已经执行的时间(单位:毫秒),结果将返回超过设置时间的操作,默认值为0,取值范围为[0, 3600000] # @type MillisecondRunning: Integer # @param Op: 筛选条件,操作类型,可能的取值:none,update,insert,query,command,getmore,remove和killcursors # @type Op: String # @param ReplicaSetName: 筛选条件,分片名称 # @type ReplicaSetName: String # @param State: 筛选条件,节点状态,可能的取值为:primary # secondary # @type State: String # @param Limit: 单次请求返回的数量,默认值为100,取值范围为[0,100] # @type Limit: Integer # @param Offset: 偏移量,默认值为0,取值范围为[0,10000] # @type Offset: Integer # @param OrderBy: 返回结果集排序的字段,目前支持:"MicrosecsRunning"/"microsecsrunning",默认为升序排序 # @type OrderBy: String # @param OrderByType: 返回结果集排序方式,可能的取值:"ASC"/"asc"或"DESC"/"desc" # @type OrderByType: String attr_accessor :InstanceId, :Ns, :MillisecondRunning, :Op, :ReplicaSetName, :State, :Limit, :Offset, :OrderBy, :OrderByType def initialize(instanceid=nil, ns=nil, millisecondrunning=nil, op=nil, replicasetname=nil, state=nil, limit=nil, offset=nil, orderby=nil, orderbytype=nil) @InstanceId = instanceid @Ns = ns @MillisecondRunning = millisecondrunning @Op = op @ReplicaSetName = replicasetname @State = state @Limit = limit @Offset = offset @OrderBy = orderby @OrderByType = orderbytype end def deserialize(params) @InstanceId = params['InstanceId'] @Ns = params['Ns'] @MillisecondRunning = params['MillisecondRunning'] @Op = params['Op'] @ReplicaSetName = params['ReplicaSetName'] @State = params['State'] @Limit = params['Limit'] @Offset = params['Offset'] @OrderBy = params['OrderBy'] @OrderByType = params['OrderByType'] end end # DescribeCurrentOp返回参数结构体 class DescribeCurrentOpResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 符合查询条件的操作总数 # @type TotalCount: Integer # @param CurrentOps: 当前操作列表 # @type CurrentOps: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :CurrentOps, :RequestId def initialize(totalcount=nil, currentops=nil, requestid=nil) @TotalCount = totalcount @CurrentOps = currentops @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['CurrentOps'].nil? @CurrentOps = [] params['CurrentOps'].each do |i| currentop_tmp = CurrentOp.new currentop_tmp.deserialize(i) @CurrentOps << currentop_tmp end end @RequestId = params['RequestId'] end end # DescribeDBBackups请求参数结构体 class DescribeDBBackupsRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 # @type InstanceId: String # @param BackupMethod: 备份方式,当前支持:0-逻辑备份,1-物理备份,2-所有备份。默认为逻辑备份。 # @type BackupMethod: Integer # @param Limit: 分页大小,最大值为100,不设置默认查询所有。 # @type Limit: Integer # @param Offset: 分页偏移量,最小值为0,默认值为0。 # @type Offset: Integer attr_accessor :InstanceId, :BackupMethod, :Limit, :Offset def initialize(instanceid=nil, backupmethod=nil, limit=nil, offset=nil) @InstanceId = instanceid @BackupMethod = backupmethod @Limit = limit @Offset = offset end def deserialize(params) @InstanceId = params['InstanceId'] @BackupMethod = params['BackupMethod'] @Limit = params['Limit'] @Offset = params['Offset'] end end # DescribeDBBackups返回参数结构体 class DescribeDBBackupsResponse < TencentCloud::Common::AbstractModel # @param BackupList: 备份列表 # @type BackupList: Array # @param TotalCount: 备份总数 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :BackupList, :TotalCount, :RequestId def initialize(backuplist=nil, totalcount=nil, requestid=nil) @BackupList = backuplist @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['BackupList'].nil? @BackupList = [] params['BackupList'].each do |i| backupinfo_tmp = BackupInfo.new backupinfo_tmp.deserialize(i) @BackupList << backupinfo_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeDBInstanceDeal请求参数结构体 class DescribeDBInstanceDealRequest < TencentCloud::Common::AbstractModel # @param DealId: 订单ID,通过CreateDBInstance等接口返回 # @type DealId: String attr_accessor :DealId def initialize(dealid=nil) @DealId = dealid end def deserialize(params) @DealId = params['DealId'] end end # DescribeDBInstanceDeal返回参数结构体 class DescribeDBInstanceDealResponse < TencentCloud::Common::AbstractModel # @param Status: 订单状态,1:未支付,2:已支付,3:发货中,4:发货成功,5:发货失败,6:退款,7:订单关闭,8:超时未支付关闭。 # @type Status: Integer # @param OriginalPrice: 订单原价。 # @type OriginalPrice: Float # @param DiscountPrice: 订单折扣价格。 # @type DiscountPrice: Float # @param Action: 订单行为,purchase:新购,renew:续费,upgrade:升配,downgrade:降配,refund:退货退款。 # @type Action: String # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Status, :OriginalPrice, :DiscountPrice, :Action, :RequestId def initialize(status=nil, originalprice=nil, discountprice=nil, action=nil, requestid=nil) @Status = status @OriginalPrice = originalprice @DiscountPrice = discountprice @Action = action @RequestId = requestid end def deserialize(params) @Status = params['Status'] @OriginalPrice = params['OriginalPrice'] @DiscountPrice = params['DiscountPrice'] @Action = params['Action'] @RequestId = params['RequestId'] end end # DescribeDBInstanceNodeProperty请求参数结构体 class DescribeDBInstanceNodePropertyRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 # @type InstanceId: String # @param NodeIds: 节点ID。 # @type NodeIds: Array # @param Roles: 节点角色。可选值包括: # # @type Roles: Array # @param OnlyHidden: 该参数指定节点是否为Hidden节点,默认为false。 # @type OnlyHidden: Boolean # @param Priority: 该参数指定选举新主节点的优先级。其取值范围为[0,100],数值越高,优先级越高。 # @type Priority: Integer # @param Votes: 该参数指定节点投票权。 # # @type Votes: Integer # @param Tags: 节点标签。 # @type Tags: Array attr_accessor :InstanceId, :NodeIds, :Roles, :OnlyHidden, :Priority, :Votes, :Tags def initialize(instanceid=nil, nodeids=nil, roles=nil, onlyhidden=nil, priority=nil, votes=nil, tags=nil) @InstanceId = instanceid @NodeIds = nodeids @Roles = roles @OnlyHidden = onlyhidden @Priority = priority @Votes = votes @Tags = tags end def deserialize(params) @InstanceId = params['InstanceId'] @NodeIds = params['NodeIds'] @Roles = params['Roles'] @OnlyHidden = params['OnlyHidden'] @Priority = params['Priority'] @Votes = params['Votes'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| nodetag_tmp = NodeTag.new nodetag_tmp.deserialize(i) @Tags << nodetag_tmp end end end end # DescribeDBInstanceNodeProperty返回参数结构体 class DescribeDBInstanceNodePropertyResponse < TencentCloud::Common::AbstractModel # @param Mongos: Mongos节点属性。 # 注意:此字段可能返回 null,表示取不到有效值。 # @type Mongos: Array # @param ReplicateSets: 副本集节点信息。 # @type ReplicateSets: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Mongos, :ReplicateSets, :RequestId def initialize(mongos=nil, replicatesets=nil, requestid=nil) @Mongos = mongos @ReplicateSets = replicatesets @RequestId = requestid end def deserialize(params) unless params['Mongos'].nil? @Mongos = [] params['Mongos'].each do |i| nodeproperty_tmp = NodeProperty.new nodeproperty_tmp.deserialize(i) @Mongos << nodeproperty_tmp end end unless params['ReplicateSets'].nil? @ReplicateSets = [] params['ReplicateSets'].each do |i| replicatesetinfo_tmp = ReplicateSetInfo.new replicatesetinfo_tmp.deserialize(i) @ReplicateSets << replicatesetinfo_tmp end end @RequestId = params['RequestId'] end end # DescribeDBInstances请求参数结构体 class DescribeDBInstancesRequest < TencentCloud::Common::AbstractModel # @param InstanceIds: 实例ID列表,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同。 # @type InstanceIds: Array # @param InstanceType: 实例类型。取值范围如下: # @type InstanceType: Integer # @param ClusterType: 集群类型,取值范围如下: # @type ClusterType: Integer # @param Status: 实例状态,取值范围如下所示: # @type Status: Array # @param VpcId: 私有网络的ID,基础网络则不传该参数。 # @type VpcId: String # @param SubnetId: 私有网络的子网ID,基础网络则不传该参数。入参设置该参数的同时,必须设置相应的VpcId。 # @type SubnetId: String # @param PayMode: 付费类型,取值范围如下: # @type PayMode: Integer # @param Limit: 单次请求返回的数量。默认值为20,取值范围为[1,100]。 # @type Limit: Integer # @param Offset: 偏移量,默认值为0。 # @type Offset: Integer # @param OrderBy: 返回结果集排序的字段,目前支持:"ProjectId"、"InstanceName"、"CreateTime",默认为升序排序。 # @type OrderBy: String # @param OrderByType: 返回结果集排序方式,目前支持:"ASC"或者"DESC"。 # @type OrderByType: String # @param ProjectIds: 项目 ID。 # @type ProjectIds: Array # @param SearchKey: 搜索关键词,支持实例ID、实例名称、完整IP。 # @type SearchKey: String # @param Tags: Tag信息。 # @type Tags: Array attr_accessor :InstanceIds, :InstanceType, :ClusterType, :Status, :VpcId, :SubnetId, :PayMode, :Limit, :Offset, :OrderBy, :OrderByType, :ProjectIds, :SearchKey, :Tags def initialize(instanceids=nil, instancetype=nil, clustertype=nil, status=nil, vpcid=nil, subnetid=nil, paymode=nil, limit=nil, offset=nil, orderby=nil, orderbytype=nil, projectids=nil, searchkey=nil, tags=nil) @InstanceIds = instanceids @InstanceType = instancetype @ClusterType = clustertype @Status = status @VpcId = vpcid @SubnetId = subnetid @PayMode = paymode @Limit = limit @Offset = offset @OrderBy = orderby @OrderByType = orderbytype @ProjectIds = projectids @SearchKey = searchkey @Tags = tags end def deserialize(params) @InstanceIds = params['InstanceIds'] @InstanceType = params['InstanceType'] @ClusterType = params['ClusterType'] @Status = params['Status'] @VpcId = params['VpcId'] @SubnetId = params['SubnetId'] @PayMode = params['PayMode'] @Limit = params['Limit'] @Offset = params['Offset'] @OrderBy = params['OrderBy'] @OrderByType = params['OrderByType'] @ProjectIds = params['ProjectIds'] @SearchKey = params['SearchKey'] unless params['Tags'].nil? @Tags = [] params['Tags'].each do |i| taginfo_tmp = TagInfo.new taginfo_tmp.deserialize(i) @Tags << taginfo_tmp end end end end # DescribeDBInstances返回参数结构体 class DescribeDBInstancesResponse < TencentCloud::Common::AbstractModel # @param TotalCount: 符合查询条件的实例总数。 # @type TotalCount: Integer # @param InstanceDetails: 实例详细信息列表。 # @type InstanceDetails: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :TotalCount, :InstanceDetails, :RequestId def initialize(totalcount=nil, instancedetails=nil, requestid=nil) @TotalCount = totalcount @InstanceDetails = instancedetails @RequestId = requestid end def deserialize(params) @TotalCount = params['TotalCount'] unless params['InstanceDetails'].nil? @InstanceDetails = [] params['InstanceDetails'].each do |i| instancedetail_tmp = InstanceDetail.new instancedetail_tmp.deserialize(i) @InstanceDetails << instancedetail_tmp end end @RequestId = params['RequestId'] end end # DescribeInstanceParams请求参数结构体 class DescribeInstanceParamsRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID # @type InstanceId: String attr_accessor :InstanceId def initialize(instanceid=nil) @InstanceId = instanceid end def deserialize(params) @InstanceId = params['InstanceId'] end end # DescribeInstanceParams返回参数结构体 class DescribeInstanceParamsResponse < TencentCloud::Common::AbstractModel # @param InstanceEnumParam: 值为枚举类型参数集合 # @type InstanceEnumParam: Array # @param InstanceIntegerParam: 值为integer类型参数集合 # @type InstanceIntegerParam: Array # @param InstanceTextParam: 值为text类型的参数集合 # @type InstanceTextParam: Array # @param InstanceMultiParam: 值为混合类型的参数集合 # @type InstanceMultiParam: Array # @param TotalCount: 当前实例支持修改的参数个数统计 如0 # @type TotalCount: Integer # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :InstanceEnumParam, :InstanceIntegerParam, :InstanceTextParam, :InstanceMultiParam, :TotalCount, :RequestId def initialize(instanceenumparam=nil, instanceintegerparam=nil, instancetextparam=nil, instancemultiparam=nil, totalcount=nil, requestid=nil) @InstanceEnumParam = instanceenumparam @InstanceIntegerParam = instanceintegerparam @InstanceTextParam = instancetextparam @InstanceMultiParam = instancemultiparam @TotalCount = totalcount @RequestId = requestid end def deserialize(params) unless params['InstanceEnumParam'].nil? @InstanceEnumParam = [] params['InstanceEnumParam'].each do |i| instanceenumparam_tmp = InstanceEnumParam.new instanceenumparam_tmp.deserialize(i) @InstanceEnumParam << instanceenumparam_tmp end end unless params['InstanceIntegerParam'].nil? @InstanceIntegerParam = [] params['InstanceIntegerParam'].each do |i| instanceintegerparam_tmp = InstanceIntegerParam.new instanceintegerparam_tmp.deserialize(i) @InstanceIntegerParam << instanceintegerparam_tmp end end unless params['InstanceTextParam'].nil? @InstanceTextParam = [] params['InstanceTextParam'].each do |i| instancetextparam_tmp = InstanceTextParam.new instancetextparam_tmp.deserialize(i) @InstanceTextParam << instancetextparam_tmp end end unless params['InstanceMultiParam'].nil? @InstanceMultiParam = [] params['InstanceMultiParam'].each do |i| instancemultiparam_tmp = InstanceMultiParam.new instancemultiparam_tmp.deserialize(i) @InstanceMultiParam << instancemultiparam_tmp end end @TotalCount = params['TotalCount'] @RequestId = params['RequestId'] end end # DescribeSecurityGroup请求参数结构体 class DescribeSecurityGroupRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID,格式如:cmgo-p8vnipr5。 # @type InstanceId: String attr_accessor :InstanceId def initialize(instanceid=nil) @InstanceId = instanceid end def deserialize(params) @InstanceId = params['InstanceId'] end end # DescribeSecurityGroup返回参数结构体 class DescribeSecurityGroupResponse < TencentCloud::Common::AbstractModel # @param Groups: 实例绑定的安全组 # @type Groups: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Groups, :RequestId def initialize(groups=nil, requestid=nil) @Groups = groups @RequestId = requestid end def deserialize(params) unless params['Groups'].nil? @Groups = [] params['Groups'].each do |i| securitygroup_tmp = SecurityGroup.new securitygroup_tmp.deserialize(i) @Groups << securitygroup_tmp end end @RequestId = params['RequestId'] end end # DescribeSlowLogPatterns请求参数结构体 class DescribeSlowLogPatternsRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 # @type InstanceId: String # @param StartTime: 慢日志起始时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-01 10:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 # @type StartTime: String # @param EndTime: 慢日志终止时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-02 12:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 # @type EndTime: String # @param SlowMS: 慢日志执行时间阈值,返回执行时间超过该阈值的慢日志,单位为毫秒(ms),最小为100毫秒。 # @type SlowMS: Integer # @param Offset: 偏移量,最小值为0,最大值为10000,默认值为0。 # @type Offset: Integer # @param Limit: 分页大小,最小值为1,最大值为100,默认值为20。 # @type Limit: Integer # @param Format: 慢日志返回格式,可设置为json,不传默认返回原生慢日志格式。 # @type Format: String attr_accessor :InstanceId, :StartTime, :EndTime, :SlowMS, :Offset, :Limit, :Format def initialize(instanceid=nil, starttime=nil, endtime=nil, slowms=nil, offset=nil, limit=nil, format=nil) @InstanceId = instanceid @StartTime = starttime @EndTime = endtime @SlowMS = slowms @Offset = offset @Limit = limit @Format = format end def deserialize(params) @InstanceId = params['InstanceId'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] @SlowMS = params['SlowMS'] @Offset = params['Offset'] @Limit = params['Limit'] @Format = params['Format'] end end # DescribeSlowLogPatterns返回参数结构体 class DescribeSlowLogPatternsResponse < TencentCloud::Common::AbstractModel # @param Count: 慢日志统计信息总数 # @type Count: Integer # @param SlowLogPatterns: 慢日志统计信息 # @type SlowLogPatterns: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Count, :SlowLogPatterns, :RequestId def initialize(count=nil, slowlogpatterns=nil, requestid=nil) @Count = count @SlowLogPatterns = slowlogpatterns @RequestId = requestid end def deserialize(params) @Count = params['Count'] unless params['SlowLogPatterns'].nil? @SlowLogPatterns = [] params['SlowLogPatterns'].each do |i| slowlogpattern_tmp = SlowLogPattern.new slowlogpattern_tmp.deserialize(i) @SlowLogPatterns << slowlogpattern_tmp end end @RequestId = params['RequestId'] end end # DescribeSlowLogs请求参数结构体 class DescribeSlowLogsRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID,格式如:cmgo-p8vnipr5。与云数据库控制台页面中显示的实例ID相同 # @type InstanceId: String # @param StartTime: 慢日志起始时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-01 10:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 # @type StartTime: String # @param EndTime: 慢日志终止时间,格式:yyyy-mm-dd hh:mm:ss,如:2019-06-02 12:00:00。查询起止时间间隔不能超过24小时,只允许查询最近7天内慢日志。 # @type EndTime: String # @param SlowMS: 慢日志执行时间阈值,返回执行时间超过该阈值的慢日志,单位为毫秒(ms),最小为100毫秒。 # @type SlowMS: Integer # @param Offset: 偏移量,最小值为0,最大值为10000,默认值为0。 # @type Offset: Integer # @param Limit: 分页大小,最小值为1,最大值为100,默认值为20。 # @type Limit: Integer # @param Format: 慢日志返回格式。默认返回原生慢日志格式,4.4及以上版本可设置为json。 # @type Format: String attr_accessor :InstanceId, :StartTime, :EndTime, :SlowMS, :Offset, :Limit, :Format def initialize(instanceid=nil, starttime=nil, endtime=nil, slowms=nil, offset=nil, limit=nil, format=nil) @InstanceId = instanceid @StartTime = starttime @EndTime = endtime @SlowMS = slowms @Offset = offset @Limit = limit @Format = format end def deserialize(params) @InstanceId = params['InstanceId'] @StartTime = params['StartTime'] @EndTime = params['EndTime'] @SlowMS = params['SlowMS'] @Offset = params['Offset'] @Limit = params['Limit'] @Format = params['Format'] end end # DescribeSlowLogs返回参数结构体 class DescribeSlowLogsResponse < TencentCloud::Common::AbstractModel # @param Count: 慢日志总数 # @type Count: Integer # @param SlowLogs: 慢日志详情 # 注意:此字段可能返回 null,表示取不到有效值。 # @type SlowLogs: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :Count, :SlowLogs, :RequestId def initialize(count=nil, slowlogs=nil, requestid=nil) @Count = count @SlowLogs = slowlogs @RequestId = requestid end def deserialize(params) @Count = params['Count'] @SlowLogs = params['SlowLogs'] @RequestId = params['RequestId'] end end # DescribeSpecInfo请求参数结构体 class DescribeSpecInfoRequest < TencentCloud::Common::AbstractModel # @param Zone: 待查询可用区 # @type Zone: String attr_accessor :Zone def initialize(zone=nil) @Zone = zone end def deserialize(params) @Zone = params['Zone'] end end # DescribeSpecInfo返回参数结构体 class DescribeSpecInfoResponse < TencentCloud::Common::AbstractModel # @param SpecInfoList: 实例售卖规格信息列表 # @type SpecInfoList: Array # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :SpecInfoList, :RequestId def initialize(specinfolist=nil, requestid=nil) @SpecInfoList = specinfolist @RequestId = requestid end def deserialize(params) unless params['SpecInfoList'].nil? @SpecInfoList = [] params['SpecInfoList'].each do |i| specificationinfo_tmp = SpecificationInfo.new specificationinfo_tmp.deserialize(i) @SpecInfoList << specificationinfo_tmp end end @RequestId = params['RequestId'] end end # FlushInstanceRouterConfig请求参数结构体 class FlushInstanceRouterConfigRequest < TencentCloud::Common::AbstractModel # @param InstanceId: 实例ID # @type InstanceId: String attr_accessor :InstanceId def initialize(instanceid=nil) @InstanceId = instanceid end def deserialize(params) @InstanceId = params['InstanceId'] end end # FlushInstanceRouterConfig返回参数结构体 class FlushInstanceRouterConfigResponse < TencentCloud::Common::AbstractModel # @param RequestId: 唯一请求 ID,每次请求都会返回。定位问题时需要提供该次请求的 RequestId。 # @type RequestId: String attr_accessor :RequestId def initialize(requestid=nil) @RequestId = requestid end def deserialize(params) @RequestId = params['RequestId'] end end # InquirePriceCreateDBInstances请求参数结构体 class InquirePriceCreateDBInstancesRequest < TencentCloud::Common::AbstractModel # @param Zone: 实例所属区域及可用区信息。格式:ap-guangzhou-2。 # @type Zone: String # @param NodeNum: 每个分片的主从节点数量。
取值范围:请通过接口DescribeSpecInfo查询,其返回的数据结构SpecItems中的参数MinNodeNum与MaxNodeNum分别对应其最小值与最大值。 # @type NodeNum: Integer # @param Memory: 实例内存大小。 # @type Memory: Integer # @param Volume: 实例硬盘大小。