# -*- coding: utf8 -*- # Copyright (c) 2017-2021 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. import warnings from tencentcloud.common.abstract_model import AbstractModel class ActivateSubscribeRequest(AbstractModel): """ActivateSubscribe请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 订阅实例ID。 :type SubscribeId: str :param _InstanceId: 数据库实例ID :type InstanceId: str :param _SubscribeObjectType: 数据订阅类型0-全实例订阅,1数据订阅,2结构订阅,3数据订阅与结构订阅 :type SubscribeObjectType: int :param _Objects: 订阅对象 :type Objects: :class:`tencentcloud.dts.v20180330.models.SubscribeObject` :param _UniqSubnetId: 数据订阅服务所在子网。默认为数据库实例所在的子网内。 :type UniqSubnetId: str :param _Vport: 订阅服务端口;默认为7507 :type Vport: int """ self._SubscribeId = None self._InstanceId = None self._SubscribeObjectType = None self._Objects = None self._UniqSubnetId = None self._Vport = None @property def SubscribeId(self): """订阅实例ID。 :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId @property def InstanceId(self): """数据库实例ID :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def SubscribeObjectType(self): """数据订阅类型0-全实例订阅,1数据订阅,2结构订阅,3数据订阅与结构订阅 :rtype: int """ return self._SubscribeObjectType @SubscribeObjectType.setter def SubscribeObjectType(self, SubscribeObjectType): self._SubscribeObjectType = SubscribeObjectType @property def Objects(self): """订阅对象 :rtype: :class:`tencentcloud.dts.v20180330.models.SubscribeObject` """ return self._Objects @Objects.setter def Objects(self, Objects): self._Objects = Objects @property def UniqSubnetId(self): """数据订阅服务所在子网。默认为数据库实例所在的子网内。 :rtype: str """ return self._UniqSubnetId @UniqSubnetId.setter def UniqSubnetId(self, UniqSubnetId): self._UniqSubnetId = UniqSubnetId @property def Vport(self): """订阅服务端口;默认为7507 :rtype: int """ return self._Vport @Vport.setter def Vport(self, Vport): self._Vport = Vport def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") self._InstanceId = params.get("InstanceId") self._SubscribeObjectType = params.get("SubscribeObjectType") if params.get("Objects") is not None: self._Objects = SubscribeObject() self._Objects._deserialize(params.get("Objects")) self._UniqSubnetId = params.get("UniqSubnetId") self._Vport = params.get("Vport") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ActivateSubscribeResponse(AbstractModel): """ActivateSubscribe返回参数结构体 """ def __init__(self): r""" :param _AsyncRequestId: 配置数据订阅任务ID。 :type AsyncRequestId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._AsyncRequestId = None self._RequestId = None @property def AsyncRequestId(self): """配置数据订阅任务ID。 :rtype: str """ return self._AsyncRequestId @AsyncRequestId.setter def AsyncRequestId(self, AsyncRequestId): self._AsyncRequestId = AsyncRequestId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._AsyncRequestId = params.get("AsyncRequestId") self._RequestId = params.get("RequestId") class CompleteMigrateJobRequest(AbstractModel): """CompleteMigrateJob请求参数结构体 """ def __init__(self): r""" :param _JobId: 数据迁移任务ID :type JobId: str :param _CompleteMode: 完成任务的方式,仅支持旧版MySQL迁移任务。waitForSync-等待主从差距为0才停止,immediately-立即完成,不会等待主从差距一致。默认为waitForSync :type CompleteMode: str """ self._JobId = None self._CompleteMode = None @property def JobId(self): """数据迁移任务ID :rtype: str """ return self._JobId @JobId.setter def JobId(self, JobId): self._JobId = JobId @property def CompleteMode(self): """完成任务的方式,仅支持旧版MySQL迁移任务。waitForSync-等待主从差距为0才停止,immediately-立即完成,不会等待主从差距一致。默认为waitForSync :rtype: str """ return self._CompleteMode @CompleteMode.setter def CompleteMode(self, CompleteMode): self._CompleteMode = CompleteMode def _deserialize(self, params): self._JobId = params.get("JobId") self._CompleteMode = params.get("CompleteMode") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CompleteMigrateJobResponse(AbstractModel): """CompleteMigrateJob返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ConsistencyParams(AbstractModel): """抽样检验时的抽样参数 """ def __init__(self): r""" :param _SelectRowsPerTable: 数据内容检测参数。表中选出用来数据对比的行,占表的总行数的百分比。取值范围是整数[1-100] :type SelectRowsPerTable: int :param _TablesSelectAll: 数据内容检测参数。迁移库表中,要进行数据内容检测的表,占所有表的百分比。取值范围是整数[1-100] :type TablesSelectAll: int :param _TablesSelectCount: 数据数量检测,检测表行数是否一致。迁移库表中,要进行数据数量检测的表,占所有表的百分比。取值范围是整数[1-100] :type TablesSelectCount: int """ self._SelectRowsPerTable = None self._TablesSelectAll = None self._TablesSelectCount = None @property def SelectRowsPerTable(self): """数据内容检测参数。表中选出用来数据对比的行,占表的总行数的百分比。取值范围是整数[1-100] :rtype: int """ return self._SelectRowsPerTable @SelectRowsPerTable.setter def SelectRowsPerTable(self, SelectRowsPerTable): self._SelectRowsPerTable = SelectRowsPerTable @property def TablesSelectAll(self): """数据内容检测参数。迁移库表中,要进行数据内容检测的表,占所有表的百分比。取值范围是整数[1-100] :rtype: int """ return self._TablesSelectAll @TablesSelectAll.setter def TablesSelectAll(self, TablesSelectAll): self._TablesSelectAll = TablesSelectAll @property def TablesSelectCount(self): """数据数量检测,检测表行数是否一致。迁移库表中,要进行数据数量检测的表,占所有表的百分比。取值范围是整数[1-100] :rtype: int """ return self._TablesSelectCount @TablesSelectCount.setter def TablesSelectCount(self, TablesSelectCount): self._TablesSelectCount = TablesSelectCount def _deserialize(self, params): self._SelectRowsPerTable = params.get("SelectRowsPerTable") self._TablesSelectAll = params.get("TablesSelectAll") self._TablesSelectCount = params.get("TablesSelectCount") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateMigrateCheckJobRequest(AbstractModel): """CreateMigrateCheckJob请求参数结构体 """ def __init__(self): r""" :param _JobId: 数据迁移任务ID :type JobId: str """ self._JobId = None @property def JobId(self): """数据迁移任务ID :rtype: str """ return self._JobId @JobId.setter def JobId(self, JobId): self._JobId = JobId def _deserialize(self, params): self._JobId = params.get("JobId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateMigrateCheckJobResponse(AbstractModel): """CreateMigrateCheckJob返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class CreateMigrateJobRequest(AbstractModel): """CreateMigrateJob请求参数结构体 """ def __init__(self): r""" :param _JobName: 数据迁移任务名称 :type JobName: str :param _MigrateOption: 迁移任务配置选项 :type MigrateOption: :class:`tencentcloud.dts.v20180330.models.MigrateOption` :param _SrcDatabaseType: 源实例数据库类型,目前支持:mysql,redis,mongodb,postgresql,mariadb,percona,sqlserver 不同地域数据库类型的具体支持情况,请参考控制台创建迁移页面。 :type SrcDatabaseType: str :param _SrcAccessType: 源实例接入类型,值包括:extranet(外网),cvm(CVM自建实例),dcg(专线接入的实例),vpncloud(云VPN接入的实例),cdb(腾讯云数据库实例),ccn(云联网实例) :type SrcAccessType: str :param _SrcInfo: 源实例信息,具体内容跟迁移任务类型相关 :type SrcInfo: :class:`tencentcloud.dts.v20180330.models.SrcInfo` :param _DstDatabaseType: 目标实例数据库类型,目前支持:mysql,redis,mongodb,postgresql,mariadb,percona,sqlserver,cynosdbmysql。不同地域数据库类型的具体支持情况,请参考控制台创建迁移页面。 :type DstDatabaseType: str :param _DstAccessType: 目标实例接入类型,目前支持:cdb(腾讯云数据库实例) :type DstAccessType: str :param _DstInfo: 目标实例信息 :type DstInfo: :class:`tencentcloud.dts.v20180330.models.DstInfo` :param _DatabaseInfo: 需要迁移的源数据库表信息,用json格式的字符串描述。当MigrateOption.MigrateObject配置为2(指定库表迁移)时必填。 对于database-table两级结构的数据库: [{"Database":"db1","Table":["table1","table2"]},{"Database":"db2"}] 对于database-schema-table三级结构: [{"Database":"db1","Schema":"s1","Table":["table1","table2"]},{"Database":"db1","Schema":"s2","Table":["table1","table2"]},{"Database":"db2","Schema":"s1","Table":["table1","table2"]},{"Database":"db3"},{"Database":"db4","Schema":"s1"}] :type DatabaseInfo: str :param _Tags: 迁移实例的tag :type Tags: list of TagItem :param _SrcNodeType: 源实例类型: ""或者"simple":主从节点,"cluster": 集群节点 :type SrcNodeType: str :param _SrcInfoMulti: 源实例信息,具体内容跟迁移任务类型相关 :type SrcInfoMulti: list of SrcInfo """ self._JobName = None self._MigrateOption = None self._SrcDatabaseType = None self._SrcAccessType = None self._SrcInfo = None self._DstDatabaseType = None self._DstAccessType = None self._DstInfo = None self._DatabaseInfo = None self._Tags = None self._SrcNodeType = None self._SrcInfoMulti = None @property def JobName(self): """数据迁移任务名称 :rtype: str """ return self._JobName @JobName.setter def JobName(self, JobName): self._JobName = JobName @property def MigrateOption(self): """迁移任务配置选项 :rtype: :class:`tencentcloud.dts.v20180330.models.MigrateOption` """ return self._MigrateOption @MigrateOption.setter def MigrateOption(self, MigrateOption): self._MigrateOption = MigrateOption @property def SrcDatabaseType(self): """源实例数据库类型,目前支持:mysql,redis,mongodb,postgresql,mariadb,percona,sqlserver 不同地域数据库类型的具体支持情况,请参考控制台创建迁移页面。 :rtype: str """ return self._SrcDatabaseType @SrcDatabaseType.setter def SrcDatabaseType(self, SrcDatabaseType): self._SrcDatabaseType = SrcDatabaseType @property def SrcAccessType(self): """源实例接入类型,值包括:extranet(外网),cvm(CVM自建实例),dcg(专线接入的实例),vpncloud(云VPN接入的实例),cdb(腾讯云数据库实例),ccn(云联网实例) :rtype: str """ return self._SrcAccessType @SrcAccessType.setter def SrcAccessType(self, SrcAccessType): self._SrcAccessType = SrcAccessType @property def SrcInfo(self): """源实例信息,具体内容跟迁移任务类型相关 :rtype: :class:`tencentcloud.dts.v20180330.models.SrcInfo` """ return self._SrcInfo @SrcInfo.setter def SrcInfo(self, SrcInfo): self._SrcInfo = SrcInfo @property def DstDatabaseType(self): """目标实例数据库类型,目前支持:mysql,redis,mongodb,postgresql,mariadb,percona,sqlserver,cynosdbmysql。不同地域数据库类型的具体支持情况,请参考控制台创建迁移页面。 :rtype: str """ return self._DstDatabaseType @DstDatabaseType.setter def DstDatabaseType(self, DstDatabaseType): self._DstDatabaseType = DstDatabaseType @property def DstAccessType(self): """目标实例接入类型,目前支持:cdb(腾讯云数据库实例) :rtype: str """ return self._DstAccessType @DstAccessType.setter def DstAccessType(self, DstAccessType): self._DstAccessType = DstAccessType @property def DstInfo(self): """目标实例信息 :rtype: :class:`tencentcloud.dts.v20180330.models.DstInfo` """ return self._DstInfo @DstInfo.setter def DstInfo(self, DstInfo): self._DstInfo = DstInfo @property def DatabaseInfo(self): """需要迁移的源数据库表信息,用json格式的字符串描述。当MigrateOption.MigrateObject配置为2(指定库表迁移)时必填。 对于database-table两级结构的数据库: [{"Database":"db1","Table":["table1","table2"]},{"Database":"db2"}] 对于database-schema-table三级结构: [{"Database":"db1","Schema":"s1","Table":["table1","table2"]},{"Database":"db1","Schema":"s2","Table":["table1","table2"]},{"Database":"db2","Schema":"s1","Table":["table1","table2"]},{"Database":"db3"},{"Database":"db4","Schema":"s1"}] :rtype: str """ return self._DatabaseInfo @DatabaseInfo.setter def DatabaseInfo(self, DatabaseInfo): self._DatabaseInfo = DatabaseInfo @property def Tags(self): """迁移实例的tag :rtype: list of TagItem """ return self._Tags @Tags.setter def Tags(self, Tags): self._Tags = Tags @property def SrcNodeType(self): """源实例类型: ""或者"simple":主从节点,"cluster": 集群节点 :rtype: str """ return self._SrcNodeType @SrcNodeType.setter def SrcNodeType(self, SrcNodeType): self._SrcNodeType = SrcNodeType @property def SrcInfoMulti(self): """源实例信息,具体内容跟迁移任务类型相关 :rtype: list of SrcInfo """ return self._SrcInfoMulti @SrcInfoMulti.setter def SrcInfoMulti(self, SrcInfoMulti): self._SrcInfoMulti = SrcInfoMulti def _deserialize(self, params): self._JobName = params.get("JobName") if params.get("MigrateOption") is not None: self._MigrateOption = MigrateOption() self._MigrateOption._deserialize(params.get("MigrateOption")) self._SrcDatabaseType = params.get("SrcDatabaseType") self._SrcAccessType = params.get("SrcAccessType") if params.get("SrcInfo") is not None: self._SrcInfo = SrcInfo() self._SrcInfo._deserialize(params.get("SrcInfo")) self._DstDatabaseType = params.get("DstDatabaseType") self._DstAccessType = params.get("DstAccessType") if params.get("DstInfo") is not None: self._DstInfo = DstInfo() self._DstInfo._deserialize(params.get("DstInfo")) self._DatabaseInfo = params.get("DatabaseInfo") if params.get("Tags") is not None: self._Tags = [] for item in params.get("Tags"): obj = TagItem() obj._deserialize(item) self._Tags.append(obj) self._SrcNodeType = params.get("SrcNodeType") if params.get("SrcInfoMulti") is not None: self._SrcInfoMulti = [] for item in params.get("SrcInfoMulti"): obj = SrcInfo() obj._deserialize(item) self._SrcInfoMulti.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateMigrateJobResponse(AbstractModel): """CreateMigrateJob返回参数结构体 """ def __init__(self): r""" :param _JobId: 数据迁移任务ID :type JobId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._JobId = None self._RequestId = None @property def JobId(self): """数据迁移任务ID :rtype: str """ return self._JobId @JobId.setter def JobId(self, JobId): self._JobId = JobId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._JobId = params.get("JobId") self._RequestId = params.get("RequestId") class CreateSubscribeRequest(AbstractModel): """CreateSubscribe请求参数结构体 """ def __init__(self): r""" :param _Product: 订阅的数据库类型,目前支持的有 mysql :type Product: str :param _PayType: 实例付费类型,1小时计费,0包年包月 :type PayType: int :param _Duration: 购买时长。PayType为0时必填。单位为月,最大支持120 :type Duration: int :param _Count: 购买数量,默认为1,最大为10 :type Count: int :param _AutoRenew: 是否自动续费,0表示不自动续费,1表示自动续费,默认为0。小时计费实例设置该标识无效。 :type AutoRenew: int :param _Tags: 实例资源标签 :type Tags: list of TagItem :param _Name: 用户自定义实例名 :type Name: str """ self._Product = None self._PayType = None self._Duration = None self._Count = None self._AutoRenew = None self._Tags = None self._Name = None @property def Product(self): """订阅的数据库类型,目前支持的有 mysql :rtype: str """ return self._Product @Product.setter def Product(self, Product): self._Product = Product @property def PayType(self): """实例付费类型,1小时计费,0包年包月 :rtype: int """ return self._PayType @PayType.setter def PayType(self, PayType): self._PayType = PayType @property def Duration(self): """购买时长。PayType为0时必填。单位为月,最大支持120 :rtype: int """ return self._Duration @Duration.setter def Duration(self, Duration): self._Duration = Duration @property def Count(self): """购买数量,默认为1,最大为10 :rtype: int """ return self._Count @Count.setter def Count(self, Count): self._Count = Count @property def AutoRenew(self): """是否自动续费,0表示不自动续费,1表示自动续费,默认为0。小时计费实例设置该标识无效。 :rtype: int """ return self._AutoRenew @AutoRenew.setter def AutoRenew(self, AutoRenew): self._AutoRenew = AutoRenew @property def Tags(self): """实例资源标签 :rtype: list of TagItem """ return self._Tags @Tags.setter def Tags(self, Tags): self._Tags = Tags @property def Name(self): """用户自定义实例名 :rtype: str """ return self._Name @Name.setter def Name(self, Name): self._Name = Name def _deserialize(self, params): self._Product = params.get("Product") self._PayType = params.get("PayType") self._Duration = params.get("Duration") self._Count = params.get("Count") self._AutoRenew = params.get("AutoRenew") if params.get("Tags") is not None: self._Tags = [] for item in params.get("Tags"): obj = TagItem() obj._deserialize(item) self._Tags.append(obj) self._Name = params.get("Name") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class CreateSubscribeResponse(AbstractModel): """CreateSubscribe返回参数结构体 """ def __init__(self): r""" :param _SubscribeIds: 数据订阅实例的ID数组 注意:此字段可能返回 null,表示取不到有效值。 :type SubscribeIds: list of str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._SubscribeIds = None self._RequestId = None @property def SubscribeIds(self): """数据订阅实例的ID数组 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of str """ return self._SubscribeIds @SubscribeIds.setter def SubscribeIds(self, SubscribeIds): self._SubscribeIds = SubscribeIds @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._SubscribeIds = params.get("SubscribeIds") self._RequestId = params.get("RequestId") class DeleteMigrateJobRequest(AbstractModel): """DeleteMigrateJob请求参数结构体 """ def __init__(self): r""" :param _JobId: 数据迁移任务ID :type JobId: str """ self._JobId = None @property def JobId(self): """数据迁移任务ID :rtype: str """ return self._JobId @JobId.setter def JobId(self, JobId): self._JobId = JobId def _deserialize(self, params): self._JobId = params.get("JobId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DeleteMigrateJobResponse(AbstractModel): """DeleteMigrateJob返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class DescribeAsyncRequestInfoRequest(AbstractModel): """DescribeAsyncRequestInfo请求参数结构体 """ def __init__(self): r""" :param _AsyncRequestId: 任务 ID :type AsyncRequestId: str """ self._AsyncRequestId = None @property def AsyncRequestId(self): """任务 ID :rtype: str """ return self._AsyncRequestId @AsyncRequestId.setter def AsyncRequestId(self, AsyncRequestId): self._AsyncRequestId = AsyncRequestId def _deserialize(self, params): self._AsyncRequestId = params.get("AsyncRequestId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeAsyncRequestInfoResponse(AbstractModel): """DescribeAsyncRequestInfo返回参数结构体 """ def __init__(self): r""" :param _Info: 任务执行结果信息 :type Info: str :param _Status: 任务执行状态,可能的值有:success,failed,running :type Status: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Info = None self._Status = None self._RequestId = None @property def Info(self): """任务执行结果信息 :rtype: str """ return self._Info @Info.setter def Info(self, Info): self._Info = Info @property def Status(self): """任务执行状态,可能的值有:success,failed,running :rtype: str """ return self._Status @Status.setter def Status(self, Status): self._Status = Status @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._Info = params.get("Info") self._Status = params.get("Status") self._RequestId = params.get("RequestId") class DescribeMigrateCheckJobRequest(AbstractModel): """DescribeMigrateCheckJob请求参数结构体 """ def __init__(self): r""" :param _JobId: 数据迁移任务ID :type JobId: str """ self._JobId = None @property def JobId(self): """数据迁移任务ID :rtype: str """ return self._JobId @JobId.setter def JobId(self, JobId): self._JobId = JobId def _deserialize(self, params): self._JobId = params.get("JobId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeMigrateCheckJobResponse(AbstractModel): """DescribeMigrateCheckJob返回参数结构体 """ def __init__(self): r""" :param _Status: 校验任务状态:unavailable(当前不可用), starting(开始中),running(校验中),finished(校验完成) :type Status: str :param _ErrorCode: 任务的错误码 :type ErrorCode: int :param _ErrorMessage: 任务的错误信息 :type ErrorMessage: str :param _Progress: Check任务总进度,如:"30"表示30% :type Progress: str :param _CheckFlag: 校验是否通过,0-未通过,1-校验通过, 3-未校验 :type CheckFlag: int :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._Status = None self._ErrorCode = None self._ErrorMessage = None self._Progress = None self._CheckFlag = None self._RequestId = None @property def Status(self): """校验任务状态:unavailable(当前不可用), starting(开始中),running(校验中),finished(校验完成) :rtype: str """ return self._Status @Status.setter def Status(self, Status): self._Status = Status @property def ErrorCode(self): """任务的错误码 :rtype: int """ return self._ErrorCode @ErrorCode.setter def ErrorCode(self, ErrorCode): self._ErrorCode = ErrorCode @property def ErrorMessage(self): """任务的错误信息 :rtype: str """ return self._ErrorMessage @ErrorMessage.setter def ErrorMessage(self, ErrorMessage): self._ErrorMessage = ErrorMessage @property def Progress(self): """Check任务总进度,如:"30"表示30% :rtype: str """ return self._Progress @Progress.setter def Progress(self, Progress): self._Progress = Progress @property def CheckFlag(self): """校验是否通过,0-未通过,1-校验通过, 3-未校验 :rtype: int """ return self._CheckFlag @CheckFlag.setter def CheckFlag(self, CheckFlag): self._CheckFlag = CheckFlag @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._Status = params.get("Status") self._ErrorCode = params.get("ErrorCode") self._ErrorMessage = params.get("ErrorMessage") self._Progress = params.get("Progress") self._CheckFlag = params.get("CheckFlag") self._RequestId = params.get("RequestId") class DescribeMigrateJobsRequest(AbstractModel): """DescribeMigrateJobs请求参数结构体 """ def __init__(self): r""" :param _JobId: 数据迁移任务ID :type JobId: str :param _JobName: 数据迁移任务名称 :type JobName: str :param _Order: 排序字段,可以取值为JobId、Status、JobName、MigrateType、RunMode、CreateTime :type Order: str :param _OrderSeq: 排序方式,升序为ASC,降序为DESC :type OrderSeq: str :param _Offset: 偏移量,默认为0 :type Offset: int :param _Limit: 返回实例数量,默认20,有效区间[1,100] :type Limit: int :param _TagFilters: 标签过滤条件 :type TagFilters: list of TagFilter """ self._JobId = None self._JobName = None self._Order = None self._OrderSeq = None self._Offset = None self._Limit = None self._TagFilters = None @property def JobId(self): """数据迁移任务ID :rtype: str """ return self._JobId @JobId.setter def JobId(self, JobId): self._JobId = JobId @property def JobName(self): """数据迁移任务名称 :rtype: str """ return self._JobName @JobName.setter def JobName(self, JobName): self._JobName = JobName @property def Order(self): """排序字段,可以取值为JobId、Status、JobName、MigrateType、RunMode、CreateTime :rtype: str """ return self._Order @Order.setter def Order(self, Order): self._Order = Order @property def OrderSeq(self): """排序方式,升序为ASC,降序为DESC :rtype: str """ return self._OrderSeq @OrderSeq.setter def OrderSeq(self, OrderSeq): self._OrderSeq = OrderSeq @property def Offset(self): """偏移量,默认为0 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset @property def Limit(self): """返回实例数量,默认20,有效区间[1,100] :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit @property def TagFilters(self): """标签过滤条件 :rtype: list of TagFilter """ return self._TagFilters @TagFilters.setter def TagFilters(self, TagFilters): self._TagFilters = TagFilters def _deserialize(self, params): self._JobId = params.get("JobId") self._JobName = params.get("JobName") self._Order = params.get("Order") self._OrderSeq = params.get("OrderSeq") self._Offset = params.get("Offset") self._Limit = params.get("Limit") if params.get("TagFilters") is not None: self._TagFilters = [] for item in params.get("TagFilters"): obj = TagFilter() obj._deserialize(item) self._TagFilters.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeMigrateJobsResponse(AbstractModel): """DescribeMigrateJobs返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 任务数目 :type TotalCount: int :param _JobList: 任务详情数组 :type JobList: list of MigrateJobInfo :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._JobList = None self._RequestId = None @property def TotalCount(self): """任务数目 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def JobList(self): """任务详情数组 :rtype: list of MigrateJobInfo """ return self._JobList @JobList.setter def JobList(self, JobList): self._JobList = JobList @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._TotalCount = params.get("TotalCount") if params.get("JobList") is not None: self._JobList = [] for item in params.get("JobList"): obj = MigrateJobInfo() obj._deserialize(item) self._JobList.append(obj) self._RequestId = params.get("RequestId") class DescribeSubscribeConfRequest(AbstractModel): """DescribeSubscribeConf请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 订阅实例ID :type SubscribeId: str """ self._SubscribeId = None @property def SubscribeId(self): """订阅实例ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeSubscribeConfResponse(AbstractModel): """DescribeSubscribeConf返回参数结构体 """ def __init__(self): r""" :param _SubscribeId: 订阅实例ID :type SubscribeId: str :param _SubscribeName: 订阅实例名称 :type SubscribeName: str :param _ChannelId: 订阅通道 :type ChannelId: str :param _Product: 订阅数据库类型 :type Product: str :param _InstanceId: 被订阅的实例 :type InstanceId: str :param _InstanceStatus: 被订阅的实例的状态,可能的值有running,offline,isolate :type InstanceStatus: str :param _SubsStatus: 订阅实例状态,可能的值有unconfigure-未配置,configuring-配置中,configured-已配置 :type SubsStatus: str :param _Status: 订阅实例生命周期状态,可能的值有:normal-正常,isolating-隔离中,isolated-已隔离,offlining-下线中 :type Status: str :param _CreateTime: 订阅实例创建时间 :type CreateTime: str :param _IsolateTime: 订阅实例被隔离时间 :type IsolateTime: str :param _ExpireTime: 订阅实例到期时间 :type ExpireTime: str :param _OfflineTime: 订阅实例下线时间 :type OfflineTime: str :param _ConsumeStartTime: 订阅实例消费时间起点。 :type ConsumeStartTime: str :param _PayType: 订阅实例计费类型,1-小时计费,0-包年包月 :type PayType: int :param _Vip: 订阅通道Vip :type Vip: str :param _Vport: 订阅通道Port :type Vport: int :param _UniqVpcId: 订阅通道所在VpcId :type UniqVpcId: str :param _UniqSubnetId: 订阅通道所在SubnetId :type UniqSubnetId: str :param _SdkConsumedTime: 当前SDK消费时间位点 :type SdkConsumedTime: str :param _SdkHost: 订阅SDK IP地址 :type SdkHost: str :param _SubscribeObjectType: 订阅对象类型0-全实例订阅,1-DDL数据订阅,2-DML结构订阅,3-DDL数据订阅+DML结构订阅 :type SubscribeObjectType: int :param _SubscribeObjects: 订阅对象,当SubscribeObjectType 为0时,此字段为空数组 :type SubscribeObjects: list of SubscribeObject :param _ModifyTime: 修改时间 :type ModifyTime: str :param _Region: 地域 :type Region: str :param _Tags: 订阅实例的标签 注意:此字段可能返回 null,表示取不到有效值。 :type Tags: list of TagItem :param _AutoRenewFlag: 自动续费标识,0-不自动续费,1-自动续费 注意:此字段可能返回 null,表示取不到有效值。 :type AutoRenewFlag: int :param _SubscribeVersion: 数据订阅版本。老版订阅填txdts,kafka版填kafka :type SubscribeVersion: str :param _Errors: 错误信息 注意:此字段可能返回 null,表示取不到有效值。 :type Errors: list of SubsErr :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._SubscribeId = None self._SubscribeName = None self._ChannelId = None self._Product = None self._InstanceId = None self._InstanceStatus = None self._SubsStatus = None self._Status = None self._CreateTime = None self._IsolateTime = None self._ExpireTime = None self._OfflineTime = None self._ConsumeStartTime = None self._PayType = None self._Vip = None self._Vport = None self._UniqVpcId = None self._UniqSubnetId = None self._SdkConsumedTime = None self._SdkHost = None self._SubscribeObjectType = None self._SubscribeObjects = None self._ModifyTime = None self._Region = None self._Tags = None self._AutoRenewFlag = None self._SubscribeVersion = None self._Errors = None self._RequestId = None @property def SubscribeId(self): """订阅实例ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId @property def SubscribeName(self): """订阅实例名称 :rtype: str """ return self._SubscribeName @SubscribeName.setter def SubscribeName(self, SubscribeName): self._SubscribeName = SubscribeName @property def ChannelId(self): """订阅通道 :rtype: str """ return self._ChannelId @ChannelId.setter def ChannelId(self, ChannelId): self._ChannelId = ChannelId @property def Product(self): """订阅数据库类型 :rtype: str """ return self._Product @Product.setter def Product(self, Product): self._Product = Product @property def InstanceId(self): """被订阅的实例 :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def InstanceStatus(self): """被订阅的实例的状态,可能的值有running,offline,isolate :rtype: str """ return self._InstanceStatus @InstanceStatus.setter def InstanceStatus(self, InstanceStatus): self._InstanceStatus = InstanceStatus @property def SubsStatus(self): """订阅实例状态,可能的值有unconfigure-未配置,configuring-配置中,configured-已配置 :rtype: str """ return self._SubsStatus @SubsStatus.setter def SubsStatus(self, SubsStatus): self._SubsStatus = SubsStatus @property def Status(self): """订阅实例生命周期状态,可能的值有:normal-正常,isolating-隔离中,isolated-已隔离,offlining-下线中 :rtype: str """ return self._Status @Status.setter def Status(self, Status): self._Status = Status @property def CreateTime(self): """订阅实例创建时间 :rtype: str """ return self._CreateTime @CreateTime.setter def CreateTime(self, CreateTime): self._CreateTime = CreateTime @property def IsolateTime(self): """订阅实例被隔离时间 :rtype: str """ return self._IsolateTime @IsolateTime.setter def IsolateTime(self, IsolateTime): self._IsolateTime = IsolateTime @property def ExpireTime(self): """订阅实例到期时间 :rtype: str """ return self._ExpireTime @ExpireTime.setter def ExpireTime(self, ExpireTime): self._ExpireTime = ExpireTime @property def OfflineTime(self): """订阅实例下线时间 :rtype: str """ return self._OfflineTime @OfflineTime.setter def OfflineTime(self, OfflineTime): self._OfflineTime = OfflineTime @property def ConsumeStartTime(self): """订阅实例消费时间起点。 :rtype: str """ return self._ConsumeStartTime @ConsumeStartTime.setter def ConsumeStartTime(self, ConsumeStartTime): self._ConsumeStartTime = ConsumeStartTime @property def PayType(self): """订阅实例计费类型,1-小时计费,0-包年包月 :rtype: int """ return self._PayType @PayType.setter def PayType(self, PayType): self._PayType = PayType @property def Vip(self): """订阅通道Vip :rtype: str """ return self._Vip @Vip.setter def Vip(self, Vip): self._Vip = Vip @property def Vport(self): """订阅通道Port :rtype: int """ return self._Vport @Vport.setter def Vport(self, Vport): self._Vport = Vport @property def UniqVpcId(self): """订阅通道所在VpcId :rtype: str """ return self._UniqVpcId @UniqVpcId.setter def UniqVpcId(self, UniqVpcId): self._UniqVpcId = UniqVpcId @property def UniqSubnetId(self): """订阅通道所在SubnetId :rtype: str """ return self._UniqSubnetId @UniqSubnetId.setter def UniqSubnetId(self, UniqSubnetId): self._UniqSubnetId = UniqSubnetId @property def SdkConsumedTime(self): """当前SDK消费时间位点 :rtype: str """ return self._SdkConsumedTime @SdkConsumedTime.setter def SdkConsumedTime(self, SdkConsumedTime): self._SdkConsumedTime = SdkConsumedTime @property def SdkHost(self): """订阅SDK IP地址 :rtype: str """ return self._SdkHost @SdkHost.setter def SdkHost(self, SdkHost): self._SdkHost = SdkHost @property def SubscribeObjectType(self): """订阅对象类型0-全实例订阅,1-DDL数据订阅,2-DML结构订阅,3-DDL数据订阅+DML结构订阅 :rtype: int """ return self._SubscribeObjectType @SubscribeObjectType.setter def SubscribeObjectType(self, SubscribeObjectType): self._SubscribeObjectType = SubscribeObjectType @property def SubscribeObjects(self): """订阅对象,当SubscribeObjectType 为0时,此字段为空数组 :rtype: list of SubscribeObject """ return self._SubscribeObjects @SubscribeObjects.setter def SubscribeObjects(self, SubscribeObjects): self._SubscribeObjects = SubscribeObjects @property def ModifyTime(self): """修改时间 :rtype: str """ return self._ModifyTime @ModifyTime.setter def ModifyTime(self, ModifyTime): self._ModifyTime = ModifyTime @property def Region(self): """地域 :rtype: str """ return self._Region @Region.setter def Region(self, Region): self._Region = Region @property def Tags(self): """订阅实例的标签 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of TagItem """ return self._Tags @Tags.setter def Tags(self, Tags): self._Tags = Tags @property def AutoRenewFlag(self): """自动续费标识,0-不自动续费,1-自动续费 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._AutoRenewFlag @AutoRenewFlag.setter def AutoRenewFlag(self, AutoRenewFlag): self._AutoRenewFlag = AutoRenewFlag @property def SubscribeVersion(self): """数据订阅版本。老版订阅填txdts,kafka版填kafka :rtype: str """ return self._SubscribeVersion @SubscribeVersion.setter def SubscribeVersion(self, SubscribeVersion): self._SubscribeVersion = SubscribeVersion @property def Errors(self): """错误信息 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of SubsErr """ return self._Errors @Errors.setter def Errors(self, Errors): self._Errors = Errors @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") self._SubscribeName = params.get("SubscribeName") self._ChannelId = params.get("ChannelId") self._Product = params.get("Product") self._InstanceId = params.get("InstanceId") self._InstanceStatus = params.get("InstanceStatus") self._SubsStatus = params.get("SubsStatus") self._Status = params.get("Status") self._CreateTime = params.get("CreateTime") self._IsolateTime = params.get("IsolateTime") self._ExpireTime = params.get("ExpireTime") self._OfflineTime = params.get("OfflineTime") self._ConsumeStartTime = params.get("ConsumeStartTime") self._PayType = params.get("PayType") self._Vip = params.get("Vip") self._Vport = params.get("Vport") self._UniqVpcId = params.get("UniqVpcId") self._UniqSubnetId = params.get("UniqSubnetId") self._SdkConsumedTime = params.get("SdkConsumedTime") self._SdkHost = params.get("SdkHost") self._SubscribeObjectType = params.get("SubscribeObjectType") if params.get("SubscribeObjects") is not None: self._SubscribeObjects = [] for item in params.get("SubscribeObjects"): obj = SubscribeObject() obj._deserialize(item) self._SubscribeObjects.append(obj) self._ModifyTime = params.get("ModifyTime") self._Region = params.get("Region") if params.get("Tags") is not None: self._Tags = [] for item in params.get("Tags"): obj = TagItem() obj._deserialize(item) self._Tags.append(obj) self._AutoRenewFlag = params.get("AutoRenewFlag") self._SubscribeVersion = params.get("SubscribeVersion") if params.get("Errors") is not None: self._Errors = [] for item in params.get("Errors"): obj = SubsErr() obj._deserialize(item) self._Errors.append(obj) self._RequestId = params.get("RequestId") class DescribeSubscribesRequest(AbstractModel): """DescribeSubscribes请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 数据订阅的实例ID :type SubscribeId: str :param _SubscribeName: 数据订阅的实例名称 :type SubscribeName: str :param _InstanceId: 绑定数据库实例的ID :type InstanceId: str :param _ChannelId: 数据订阅实例的通道ID :type ChannelId: str :param _PayType: 计费模式筛选,可能的值:0-包年包月,1-按量计费 :type PayType: str :param _Product: 订阅的数据库产品,如mysql :type Product: str :param _Status: 数据订阅实例的状态,creating - 创建中,normal - 正常运行,isolating - 隔离中,isolated - 已隔离,offlining - 下线中 :type Status: list of str :param _SubsStatus: 数据订阅实例的配置状态,unconfigure - 未配置, configuring - 配置中,configured - 已配置 :type SubsStatus: list of str :param _Offset: 返回记录的起始偏移量,默认为0。请输入非负整数 :type Offset: int :param _Limit: 单次返回的记录数量,默认20。请输入1到100的整数 :type Limit: int :param _OrderDirection: 排序方向,可选的值为"DESC"和"ASC",默认为"DESC",按创建时间逆序排序 :type OrderDirection: str :param _TagFilters: 标签过滤条件 :type TagFilters: list of TagFilter :param _SubscribeVersion: 订阅实例版本;txdts-旧版数据订阅,kafka-kafka版本数据订阅 :type SubscribeVersion: str """ self._SubscribeId = None self._SubscribeName = None self._InstanceId = None self._ChannelId = None self._PayType = None self._Product = None self._Status = None self._SubsStatus = None self._Offset = None self._Limit = None self._OrderDirection = None self._TagFilters = None self._SubscribeVersion = None @property def SubscribeId(self): """数据订阅的实例ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId @property def SubscribeName(self): """数据订阅的实例名称 :rtype: str """ return self._SubscribeName @SubscribeName.setter def SubscribeName(self, SubscribeName): self._SubscribeName = SubscribeName @property def InstanceId(self): """绑定数据库实例的ID :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def ChannelId(self): """数据订阅实例的通道ID :rtype: str """ return self._ChannelId @ChannelId.setter def ChannelId(self, ChannelId): self._ChannelId = ChannelId @property def PayType(self): """计费模式筛选,可能的值:0-包年包月,1-按量计费 :rtype: str """ return self._PayType @PayType.setter def PayType(self, PayType): self._PayType = PayType @property def Product(self): """订阅的数据库产品,如mysql :rtype: str """ return self._Product @Product.setter def Product(self, Product): self._Product = Product @property def Status(self): """数据订阅实例的状态,creating - 创建中,normal - 正常运行,isolating - 隔离中,isolated - 已隔离,offlining - 下线中 :rtype: list of str """ return self._Status @Status.setter def Status(self, Status): self._Status = Status @property def SubsStatus(self): """数据订阅实例的配置状态,unconfigure - 未配置, configuring - 配置中,configured - 已配置 :rtype: list of str """ return self._SubsStatus @SubsStatus.setter def SubsStatus(self, SubsStatus): self._SubsStatus = SubsStatus @property def Offset(self): """返回记录的起始偏移量,默认为0。请输入非负整数 :rtype: int """ return self._Offset @Offset.setter def Offset(self, Offset): self._Offset = Offset @property def Limit(self): """单次返回的记录数量,默认20。请输入1到100的整数 :rtype: int """ return self._Limit @Limit.setter def Limit(self, Limit): self._Limit = Limit @property def OrderDirection(self): """排序方向,可选的值为"DESC"和"ASC",默认为"DESC",按创建时间逆序排序 :rtype: str """ return self._OrderDirection @OrderDirection.setter def OrderDirection(self, OrderDirection): self._OrderDirection = OrderDirection @property def TagFilters(self): """标签过滤条件 :rtype: list of TagFilter """ return self._TagFilters @TagFilters.setter def TagFilters(self, TagFilters): self._TagFilters = TagFilters @property def SubscribeVersion(self): """订阅实例版本;txdts-旧版数据订阅,kafka-kafka版本数据订阅 :rtype: str """ return self._SubscribeVersion @SubscribeVersion.setter def SubscribeVersion(self, SubscribeVersion): self._SubscribeVersion = SubscribeVersion def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") self._SubscribeName = params.get("SubscribeName") self._InstanceId = params.get("InstanceId") self._ChannelId = params.get("ChannelId") self._PayType = params.get("PayType") self._Product = params.get("Product") self._Status = params.get("Status") self._SubsStatus = params.get("SubsStatus") self._Offset = params.get("Offset") self._Limit = params.get("Limit") self._OrderDirection = params.get("OrderDirection") if params.get("TagFilters") is not None: self._TagFilters = [] for item in params.get("TagFilters"): obj = TagFilter() obj._deserialize(item) self._TagFilters.append(obj) self._SubscribeVersion = params.get("SubscribeVersion") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class DescribeSubscribesResponse(AbstractModel): """DescribeSubscribes返回参数结构体 """ def __init__(self): r""" :param _TotalCount: 符合查询条件的实例总数 :type TotalCount: int :param _Items: 数据订阅实例的信息列表 :type Items: list of SubscribeInfo :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._TotalCount = None self._Items = None self._RequestId = None @property def TotalCount(self): """符合查询条件的实例总数 :rtype: int """ return self._TotalCount @TotalCount.setter def TotalCount(self, TotalCount): self._TotalCount = TotalCount @property def Items(self): """数据订阅实例的信息列表 :rtype: list of SubscribeInfo """ return self._Items @Items.setter def Items(self, Items): self._Items = Items @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._TotalCount = params.get("TotalCount") if params.get("Items") is not None: self._Items = [] for item in params.get("Items"): obj = SubscribeInfo() obj._deserialize(item) self._Items.append(obj) self._RequestId = params.get("RequestId") class DstInfo(AbstractModel): """目的实例信息,具体内容跟迁移任务类型相关 """ def __init__(self): r""" :param _Region: 目标实例地域,如ap-guangzhou :type Region: str :param _InstanceId: 目标实例ID,如cdb-jd92ijd8 :type InstanceId: str :param _Ip: 目标实例vip。已废弃,无需填写 :type Ip: str :param _Port: 目标实例vport。已废弃,无需填写 :type Port: int :param _ReadOnly: 目前只对MySQL有效。当为整实例迁移时,1-只读,0-可读写。 :type ReadOnly: int :param _User: 目标数据库账号 :type User: str :param _Password: 目标数据库密码 :type Password: str """ self._Region = None self._InstanceId = None self._Ip = None self._Port = None self._ReadOnly = None self._User = None self._Password = None @property def Region(self): """目标实例地域,如ap-guangzhou :rtype: str """ return self._Region @Region.setter def Region(self, Region): self._Region = Region @property def InstanceId(self): """目标实例ID,如cdb-jd92ijd8 :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def Ip(self): """目标实例vip。已废弃,无需填写 :rtype: str """ return self._Ip @Ip.setter def Ip(self, Ip): self._Ip = Ip @property def Port(self): """目标实例vport。已废弃,无需填写 :rtype: int """ return self._Port @Port.setter def Port(self, Port): self._Port = Port @property def ReadOnly(self): """目前只对MySQL有效。当为整实例迁移时,1-只读,0-可读写。 :rtype: int """ return self._ReadOnly @ReadOnly.setter def ReadOnly(self, ReadOnly): self._ReadOnly = ReadOnly @property def User(self): """目标数据库账号 :rtype: str """ return self._User @User.setter def User(self, User): self._User = User @property def Password(self): """目标数据库密码 :rtype: str """ return self._Password @Password.setter def Password(self, Password): self._Password = Password def _deserialize(self, params): self._Region = params.get("Region") self._InstanceId = params.get("InstanceId") self._Ip = params.get("Ip") self._Port = params.get("Port") self._ReadOnly = params.get("ReadOnly") self._User = params.get("User") self._Password = params.get("Password") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ErrorInfo(AbstractModel): """迁移任务错误信息及提示 """ def __init__(self): r""" :param _ErrorLog: 具体的报错日志, 包含错误码和错误信息 :type ErrorLog: str :param _HelpDoc: 报错对应的帮助文档Ur :type HelpDoc: str """ self._ErrorLog = None self._HelpDoc = None @property def ErrorLog(self): """具体的报错日志, 包含错误码和错误信息 :rtype: str """ return self._ErrorLog @ErrorLog.setter def ErrorLog(self, ErrorLog): self._ErrorLog = ErrorLog @property def HelpDoc(self): """报错对应的帮助文档Ur :rtype: str """ return self._HelpDoc @HelpDoc.setter def HelpDoc(self, HelpDoc): self._HelpDoc = HelpDoc def _deserialize(self, params): self._ErrorLog = params.get("ErrorLog") self._HelpDoc = params.get("HelpDoc") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class IsolateSubscribeRequest(AbstractModel): """IsolateSubscribe请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 订阅实例ID :type SubscribeId: str """ self._SubscribeId = None @property def SubscribeId(self): """订阅实例ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class IsolateSubscribeResponse(AbstractModel): """IsolateSubscribe返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class MigrateDetailInfo(AbstractModel): """描述详细迁移过程 """ def __init__(self): r""" :param _StepAll: 总步骤数 :type StepAll: int :param _StepNow: 当前步骤 :type StepNow: int :param _Progress: 总进度,如:"10" :type Progress: str :param _CurrentStepProgress: 当前步骤进度,如:"1" :type CurrentStepProgress: str :param _MasterSlaveDistance: 主从差距,MB;在增量同步阶段有效,目前支持产品为:redis和mysql :type MasterSlaveDistance: int :param _SecondsBehindMaster: 主从差距,秒;在增量同步阶段有效,目前支持产品为:mysql :type SecondsBehindMaster: int :param _StepInfo: 步骤信息 :type StepInfo: list of MigrateStepDetailInfo """ self._StepAll = None self._StepNow = None self._Progress = None self._CurrentStepProgress = None self._MasterSlaveDistance = None self._SecondsBehindMaster = None self._StepInfo = None @property def StepAll(self): """总步骤数 :rtype: int """ return self._StepAll @StepAll.setter def StepAll(self, StepAll): self._StepAll = StepAll @property def StepNow(self): """当前步骤 :rtype: int """ return self._StepNow @StepNow.setter def StepNow(self, StepNow): self._StepNow = StepNow @property def Progress(self): """总进度,如:"10" :rtype: str """ return self._Progress @Progress.setter def Progress(self, Progress): self._Progress = Progress @property def CurrentStepProgress(self): """当前步骤进度,如:"1" :rtype: str """ return self._CurrentStepProgress @CurrentStepProgress.setter def CurrentStepProgress(self, CurrentStepProgress): self._CurrentStepProgress = CurrentStepProgress @property def MasterSlaveDistance(self): """主从差距,MB;在增量同步阶段有效,目前支持产品为:redis和mysql :rtype: int """ return self._MasterSlaveDistance @MasterSlaveDistance.setter def MasterSlaveDistance(self, MasterSlaveDistance): self._MasterSlaveDistance = MasterSlaveDistance @property def SecondsBehindMaster(self): """主从差距,秒;在增量同步阶段有效,目前支持产品为:mysql :rtype: int """ return self._SecondsBehindMaster @SecondsBehindMaster.setter def SecondsBehindMaster(self, SecondsBehindMaster): self._SecondsBehindMaster = SecondsBehindMaster @property def StepInfo(self): """步骤信息 :rtype: list of MigrateStepDetailInfo """ return self._StepInfo @StepInfo.setter def StepInfo(self, StepInfo): self._StepInfo = StepInfo def _deserialize(self, params): self._StepAll = params.get("StepAll") self._StepNow = params.get("StepNow") self._Progress = params.get("Progress") self._CurrentStepProgress = params.get("CurrentStepProgress") self._MasterSlaveDistance = params.get("MasterSlaveDistance") self._SecondsBehindMaster = params.get("SecondsBehindMaster") if params.get("StepInfo") is not None: self._StepInfo = [] for item in params.get("StepInfo"): obj = MigrateStepDetailInfo() obj._deserialize(item) self._StepInfo.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class MigrateJobInfo(AbstractModel): """迁移任务详情 """ def __init__(self): r""" :param _JobId: 数据迁移任务ID :type JobId: str :param _JobName: 数据迁移任务名称 :type JobName: str :param _MigrateOption: 迁移任务配置选项 :type MigrateOption: :class:`tencentcloud.dts.v20180330.models.MigrateOption` :param _SrcDatabaseType: 源实例数据库类型:mysql,redis,mongodb,postgresql,mariadb,percona :type SrcDatabaseType: str :param _SrcAccessType: 源实例接入类型,值包括:extranet(外网),cvm(cvm自建实例),dcg(专线接入的实例),vpncloud(云vpn接入的实例),cdb(腾讯云数据库实例),ccn(云联网实例) :type SrcAccessType: str :param _SrcInfo: 源实例信息,具体内容跟迁移任务类型相关 :type SrcInfo: :class:`tencentcloud.dts.v20180330.models.SrcInfo` :param _DstDatabaseType: 目标实例数据库类型:mysql,redis,mongodb,postgresql,mariadb,percona :type DstDatabaseType: str :param _DstAccessType: 目标实例接入类型,目前支持:cdb(腾讯云数据库实例) :type DstAccessType: str :param _DstInfo: 目标实例信息 :type DstInfo: :class:`tencentcloud.dts.v20180330.models.DstInfo` :param _DatabaseInfo: 需要迁移的源数据库表信息,如果需要迁移的是整个实例,该字段为[] :type DatabaseInfo: str :param _CreateTime: 任务创建(提交)时间 :type CreateTime: str :param _StartTime: 任务开始执行时间 :type StartTime: str :param _EndTime: 任务执行结束时间 :type EndTime: str :param _Status: 任务状态,取值为:1-创建中(Creating),3-校验中(Checking)4-校验通过(CheckPass),5-校验不通过(CheckNotPass),7-任务运行(Running),8-准备完成(ReadyComplete),9-任务成功(Success),10-任务失败(Failed),11-撤销中(Stopping),12-完成中(Completing),23-未知状态(Unknown) :type Status: int :param _Detail: 任务详情 :type Detail: :class:`tencentcloud.dts.v20180330.models.MigrateDetailInfo` :param _ErrorInfo: 任务错误信息提示,当任务发生错误时,不为null或者空值 :type ErrorInfo: list of ErrorInfo :param _Tags: 标签 注意:此字段可能返回 null,表示取不到有效值。 :type Tags: list of TagItem :param _SrcInfoMulti: 源实例为集群时且接入为非cdb时源实例信息 注意:此字段可能返回 null,表示取不到有效值。 :type SrcInfoMulti: list of SrcInfo """ self._JobId = None self._JobName = None self._MigrateOption = None self._SrcDatabaseType = None self._SrcAccessType = None self._SrcInfo = None self._DstDatabaseType = None self._DstAccessType = None self._DstInfo = None self._DatabaseInfo = None self._CreateTime = None self._StartTime = None self._EndTime = None self._Status = None self._Detail = None self._ErrorInfo = None self._Tags = None self._SrcInfoMulti = None @property def JobId(self): """数据迁移任务ID :rtype: str """ return self._JobId @JobId.setter def JobId(self, JobId): self._JobId = JobId @property def JobName(self): """数据迁移任务名称 :rtype: str """ return self._JobName @JobName.setter def JobName(self, JobName): self._JobName = JobName @property def MigrateOption(self): """迁移任务配置选项 :rtype: :class:`tencentcloud.dts.v20180330.models.MigrateOption` """ return self._MigrateOption @MigrateOption.setter def MigrateOption(self, MigrateOption): self._MigrateOption = MigrateOption @property def SrcDatabaseType(self): """源实例数据库类型:mysql,redis,mongodb,postgresql,mariadb,percona :rtype: str """ return self._SrcDatabaseType @SrcDatabaseType.setter def SrcDatabaseType(self, SrcDatabaseType): self._SrcDatabaseType = SrcDatabaseType @property def SrcAccessType(self): """源实例接入类型,值包括:extranet(外网),cvm(cvm自建实例),dcg(专线接入的实例),vpncloud(云vpn接入的实例),cdb(腾讯云数据库实例),ccn(云联网实例) :rtype: str """ return self._SrcAccessType @SrcAccessType.setter def SrcAccessType(self, SrcAccessType): self._SrcAccessType = SrcAccessType @property def SrcInfo(self): """源实例信息,具体内容跟迁移任务类型相关 :rtype: :class:`tencentcloud.dts.v20180330.models.SrcInfo` """ return self._SrcInfo @SrcInfo.setter def SrcInfo(self, SrcInfo): self._SrcInfo = SrcInfo @property def DstDatabaseType(self): """目标实例数据库类型:mysql,redis,mongodb,postgresql,mariadb,percona :rtype: str """ return self._DstDatabaseType @DstDatabaseType.setter def DstDatabaseType(self, DstDatabaseType): self._DstDatabaseType = DstDatabaseType @property def DstAccessType(self): """目标实例接入类型,目前支持:cdb(腾讯云数据库实例) :rtype: str """ return self._DstAccessType @DstAccessType.setter def DstAccessType(self, DstAccessType): self._DstAccessType = DstAccessType @property def DstInfo(self): """目标实例信息 :rtype: :class:`tencentcloud.dts.v20180330.models.DstInfo` """ return self._DstInfo @DstInfo.setter def DstInfo(self, DstInfo): self._DstInfo = DstInfo @property def DatabaseInfo(self): """需要迁移的源数据库表信息,如果需要迁移的是整个实例,该字段为[] :rtype: str """ return self._DatabaseInfo @DatabaseInfo.setter def DatabaseInfo(self, DatabaseInfo): self._DatabaseInfo = DatabaseInfo @property def CreateTime(self): """任务创建(提交)时间 :rtype: str """ return self._CreateTime @CreateTime.setter def CreateTime(self, CreateTime): self._CreateTime = CreateTime @property def StartTime(self): """任务开始执行时间 :rtype: str """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime @property def EndTime(self): """任务执行结束时间 :rtype: str """ return self._EndTime @EndTime.setter def EndTime(self, EndTime): self._EndTime = EndTime @property def Status(self): """任务状态,取值为:1-创建中(Creating),3-校验中(Checking)4-校验通过(CheckPass),5-校验不通过(CheckNotPass),7-任务运行(Running),8-准备完成(ReadyComplete),9-任务成功(Success),10-任务失败(Failed),11-撤销中(Stopping),12-完成中(Completing),23-未知状态(Unknown) :rtype: int """ return self._Status @Status.setter def Status(self, Status): self._Status = Status @property def Detail(self): """任务详情 :rtype: :class:`tencentcloud.dts.v20180330.models.MigrateDetailInfo` """ return self._Detail @Detail.setter def Detail(self, Detail): self._Detail = Detail @property def ErrorInfo(self): """任务错误信息提示,当任务发生错误时,不为null或者空值 :rtype: list of ErrorInfo """ return self._ErrorInfo @ErrorInfo.setter def ErrorInfo(self, ErrorInfo): self._ErrorInfo = ErrorInfo @property def Tags(self): """标签 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of TagItem """ return self._Tags @Tags.setter def Tags(self, Tags): self._Tags = Tags @property def SrcInfoMulti(self): """源实例为集群时且接入为非cdb时源实例信息 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of SrcInfo """ return self._SrcInfoMulti @SrcInfoMulti.setter def SrcInfoMulti(self, SrcInfoMulti): self._SrcInfoMulti = SrcInfoMulti def _deserialize(self, params): self._JobId = params.get("JobId") self._JobName = params.get("JobName") if params.get("MigrateOption") is not None: self._MigrateOption = MigrateOption() self._MigrateOption._deserialize(params.get("MigrateOption")) self._SrcDatabaseType = params.get("SrcDatabaseType") self._SrcAccessType = params.get("SrcAccessType") if params.get("SrcInfo") is not None: self._SrcInfo = SrcInfo() self._SrcInfo._deserialize(params.get("SrcInfo")) self._DstDatabaseType = params.get("DstDatabaseType") self._DstAccessType = params.get("DstAccessType") if params.get("DstInfo") is not None: self._DstInfo = DstInfo() self._DstInfo._deserialize(params.get("DstInfo")) self._DatabaseInfo = params.get("DatabaseInfo") self._CreateTime = params.get("CreateTime") self._StartTime = params.get("StartTime") self._EndTime = params.get("EndTime") self._Status = params.get("Status") if params.get("Detail") is not None: self._Detail = MigrateDetailInfo() self._Detail._deserialize(params.get("Detail")) if params.get("ErrorInfo") is not None: self._ErrorInfo = [] for item in params.get("ErrorInfo"): obj = ErrorInfo() obj._deserialize(item) self._ErrorInfo.append(obj) if params.get("Tags") is not None: self._Tags = [] for item in params.get("Tags"): obj = TagItem() obj._deserialize(item) self._Tags.append(obj) if params.get("SrcInfoMulti") is not None: self._SrcInfoMulti = [] for item in params.get("SrcInfoMulti"): obj = SrcInfo() obj._deserialize(item) self._SrcInfoMulti.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class MigrateOption(AbstractModel): """迁移任务配置选项 """ def __init__(self): r""" :param _RunMode: 任务运行模式,值包括:1-立即执行,2-定时执行 :type RunMode: int :param _ExpectTime: 期望执行时间,当runMode=2时,该字段必填,时间格式:yyyy-mm-dd hh:mm:ss :type ExpectTime: str :param _MigrateType: 数据迁移类型,值包括:1-结构迁移,2-全量迁移,3-全量+增量迁移 :type MigrateType: int :param _MigrateObject: 迁移对象,1-整个实例,2-指定库表 :type MigrateObject: int :param _ConsistencyType: 抽样数据一致性检测参数,1-未配置,2-全量检测,3-抽样检测, 4-仅校验不一致表,5-不检测 :type ConsistencyType: int :param _IsOverrideRoot: 是否用源库Root账户覆盖目标库,值包括:0-不覆盖,1-覆盖,选择库表或者结构迁移时应该为0 :type IsOverrideRoot: int :param _ExternParams: 不同数据库用到的额外参数.以JSON格式描述. Redis可定义如下的参数: { "ClientOutputBufferHardLimit":512, 从机缓冲区的硬性容量限制(MB) "ClientOutputBufferSoftLimit":512, 从机缓冲区的软性容量限制(MB) "ClientOutputBufferPersistTime":60, 从机缓冲区的软性限制持续时间(秒) "ReplBacklogSize":512, 环形缓冲区容量限制(MB) "ReplTimeout":120, 复制超时时间(秒) } MongoDB可定义如下的参数: { 'SrcAuthDatabase':'admin', 'SrcAuthFlag': "1", 'SrcAuthMechanism':"SCRAM-SHA-1" } MySQL暂不支持额外参数设置。 :type ExternParams: str :param _ConsistencyParams: 仅用于“抽样数据一致性检测”,ConsistencyType配置为抽样检测时,必选 :type ConsistencyParams: :class:`tencentcloud.dts.v20180330.models.ConsistencyParams` """ self._RunMode = None self._ExpectTime = None self._MigrateType = None self._MigrateObject = None self._ConsistencyType = None self._IsOverrideRoot = None self._ExternParams = None self._ConsistencyParams = None @property def RunMode(self): """任务运行模式,值包括:1-立即执行,2-定时执行 :rtype: int """ return self._RunMode @RunMode.setter def RunMode(self, RunMode): self._RunMode = RunMode @property def ExpectTime(self): """期望执行时间,当runMode=2时,该字段必填,时间格式:yyyy-mm-dd hh:mm:ss :rtype: str """ return self._ExpectTime @ExpectTime.setter def ExpectTime(self, ExpectTime): self._ExpectTime = ExpectTime @property def MigrateType(self): """数据迁移类型,值包括:1-结构迁移,2-全量迁移,3-全量+增量迁移 :rtype: int """ return self._MigrateType @MigrateType.setter def MigrateType(self, MigrateType): self._MigrateType = MigrateType @property def MigrateObject(self): """迁移对象,1-整个实例,2-指定库表 :rtype: int """ return self._MigrateObject @MigrateObject.setter def MigrateObject(self, MigrateObject): self._MigrateObject = MigrateObject @property def ConsistencyType(self): """抽样数据一致性检测参数,1-未配置,2-全量检测,3-抽样检测, 4-仅校验不一致表,5-不检测 :rtype: int """ return self._ConsistencyType @ConsistencyType.setter def ConsistencyType(self, ConsistencyType): self._ConsistencyType = ConsistencyType @property def IsOverrideRoot(self): """是否用源库Root账户覆盖目标库,值包括:0-不覆盖,1-覆盖,选择库表或者结构迁移时应该为0 :rtype: int """ return self._IsOverrideRoot @IsOverrideRoot.setter def IsOverrideRoot(self, IsOverrideRoot): self._IsOverrideRoot = IsOverrideRoot @property def ExternParams(self): """不同数据库用到的额外参数.以JSON格式描述. Redis可定义如下的参数: { "ClientOutputBufferHardLimit":512, 从机缓冲区的硬性容量限制(MB) "ClientOutputBufferSoftLimit":512, 从机缓冲区的软性容量限制(MB) "ClientOutputBufferPersistTime":60, 从机缓冲区的软性限制持续时间(秒) "ReplBacklogSize":512, 环形缓冲区容量限制(MB) "ReplTimeout":120, 复制超时时间(秒) } MongoDB可定义如下的参数: { 'SrcAuthDatabase':'admin', 'SrcAuthFlag': "1", 'SrcAuthMechanism':"SCRAM-SHA-1" } MySQL暂不支持额外参数设置。 :rtype: str """ return self._ExternParams @ExternParams.setter def ExternParams(self, ExternParams): self._ExternParams = ExternParams @property def ConsistencyParams(self): """仅用于“抽样数据一致性检测”,ConsistencyType配置为抽样检测时,必选 :rtype: :class:`tencentcloud.dts.v20180330.models.ConsistencyParams` """ return self._ConsistencyParams @ConsistencyParams.setter def ConsistencyParams(self, ConsistencyParams): self._ConsistencyParams = ConsistencyParams def _deserialize(self, params): self._RunMode = params.get("RunMode") self._ExpectTime = params.get("ExpectTime") self._MigrateType = params.get("MigrateType") self._MigrateObject = params.get("MigrateObject") self._ConsistencyType = params.get("ConsistencyType") self._IsOverrideRoot = params.get("IsOverrideRoot") self._ExternParams = params.get("ExternParams") if params.get("ConsistencyParams") is not None: self._ConsistencyParams = ConsistencyParams() self._ConsistencyParams._deserialize(params.get("ConsistencyParams")) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class MigrateStepDetailInfo(AbstractModel): """迁移中的步骤信息 """ def __init__(self): r""" :param _StepNo: 步骤序列 :type StepNo: int :param _StepName: 步骤展现名称 :type StepName: str :param _StepId: 步骤英文标识 :type StepId: str :param _Status: 步骤状态:0-默认值,1-成功,2-失败,3-执行中,4-未执行 :type Status: int :param _StartTime: 当前步骤开始的时间,格式为"yyyy-mm-dd hh:mm:ss",该字段不存在或者为空是无意义 注意:此字段可能返回 null,表示取不到有效值。 :type StartTime: str """ self._StepNo = None self._StepName = None self._StepId = None self._Status = None self._StartTime = None @property def StepNo(self): """步骤序列 :rtype: int """ return self._StepNo @StepNo.setter def StepNo(self, StepNo): self._StepNo = StepNo @property def StepName(self): """步骤展现名称 :rtype: str """ return self._StepName @StepName.setter def StepName(self, StepName): self._StepName = StepName @property def StepId(self): """步骤英文标识 :rtype: str """ return self._StepId @StepId.setter def StepId(self, StepId): self._StepId = StepId @property def Status(self): """步骤状态:0-默认值,1-成功,2-失败,3-执行中,4-未执行 :rtype: int """ return self._Status @Status.setter def Status(self, Status): self._Status = Status @property def StartTime(self): """当前步骤开始的时间,格式为"yyyy-mm-dd hh:mm:ss",该字段不存在或者为空是无意义 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._StartTime @StartTime.setter def StartTime(self, StartTime): self._StartTime = StartTime def _deserialize(self, params): self._StepNo = params.get("StepNo") self._StepName = params.get("StepName") self._StepId = params.get("StepId") self._Status = params.get("Status") self._StartTime = params.get("StartTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyMigrateJobRequest(AbstractModel): """ModifyMigrateJob请求参数结构体 """ def __init__(self): r""" :param _JobId: 待修改的数据迁移任务ID :type JobId: str :param _JobName: 数据迁移任务名称 :type JobName: str :param _MigrateOption: 迁移任务配置选项 :type MigrateOption: :class:`tencentcloud.dts.v20180330.models.MigrateOption` :param _SrcAccessType: 源实例接入类型,值包括:extranet(外网),cvm(CVM自建实例),dcg(专线接入的实例),vpncloud(云VPN接入的实例),cdb(云上CDB实例) :type SrcAccessType: str :param _SrcInfo: 源实例信息,具体内容跟迁移任务类型相关 :type SrcInfo: :class:`tencentcloud.dts.v20180330.models.SrcInfo` :param _DstAccessType: 目标实例接入类型,值包括:extranet(外网),cvm(CVM自建实例),dcg(专线接入的实例),vpncloud(云VPN接入的实例),cdb(云上CDB实例). 目前只支持cdb. :type DstAccessType: str :param _DstInfo: 目标实例信息, 其中目标实例地域不允许修改. :type DstInfo: :class:`tencentcloud.dts.v20180330.models.DstInfo` :param _DatabaseInfo: 当选择'指定库表'迁移的时候, 需要设置待迁移的源数据库表信息,用符合json数组格式的字符串描述, 如下所例。 对于database-table两级结构的数据库: [{"Database":"db1","Table":["table1","table2"]},{"Database":"db2"}] 对于database-schema-table三级结构: [{"Database":"db1","Schema":"s1","Table":["table1","table2"]},{"Database":"db1","Schema":"s2","Table":["table1","table2"]},{"Database":"db2","Schema":"s1","Table":["table1","table2"]},{"Database":"db3"},{"Database":"db4","Schema":"s1"}] 如果是'整个实例'的迁移模式,不需设置该字段 :type DatabaseInfo: str :param _SrcNodeType: 源实例类型: ""或者"simple":主从节点,"cluster": 集群节点 :type SrcNodeType: str :param _SrcInfoMulti: 源实例信息,具体内容跟迁移任务类型相关 :type SrcInfoMulti: list of SrcInfo """ self._JobId = None self._JobName = None self._MigrateOption = None self._SrcAccessType = None self._SrcInfo = None self._DstAccessType = None self._DstInfo = None self._DatabaseInfo = None self._SrcNodeType = None self._SrcInfoMulti = None @property def JobId(self): """待修改的数据迁移任务ID :rtype: str """ return self._JobId @JobId.setter def JobId(self, JobId): self._JobId = JobId @property def JobName(self): """数据迁移任务名称 :rtype: str """ return self._JobName @JobName.setter def JobName(self, JobName): self._JobName = JobName @property def MigrateOption(self): """迁移任务配置选项 :rtype: :class:`tencentcloud.dts.v20180330.models.MigrateOption` """ return self._MigrateOption @MigrateOption.setter def MigrateOption(self, MigrateOption): self._MigrateOption = MigrateOption @property def SrcAccessType(self): """源实例接入类型,值包括:extranet(外网),cvm(CVM自建实例),dcg(专线接入的实例),vpncloud(云VPN接入的实例),cdb(云上CDB实例) :rtype: str """ return self._SrcAccessType @SrcAccessType.setter def SrcAccessType(self, SrcAccessType): self._SrcAccessType = SrcAccessType @property def SrcInfo(self): """源实例信息,具体内容跟迁移任务类型相关 :rtype: :class:`tencentcloud.dts.v20180330.models.SrcInfo` """ return self._SrcInfo @SrcInfo.setter def SrcInfo(self, SrcInfo): self._SrcInfo = SrcInfo @property def DstAccessType(self): """目标实例接入类型,值包括:extranet(外网),cvm(CVM自建实例),dcg(专线接入的实例),vpncloud(云VPN接入的实例),cdb(云上CDB实例). 目前只支持cdb. :rtype: str """ return self._DstAccessType @DstAccessType.setter def DstAccessType(self, DstAccessType): self._DstAccessType = DstAccessType @property def DstInfo(self): """目标实例信息, 其中目标实例地域不允许修改. :rtype: :class:`tencentcloud.dts.v20180330.models.DstInfo` """ return self._DstInfo @DstInfo.setter def DstInfo(self, DstInfo): self._DstInfo = DstInfo @property def DatabaseInfo(self): """当选择'指定库表'迁移的时候, 需要设置待迁移的源数据库表信息,用符合json数组格式的字符串描述, 如下所例。 对于database-table两级结构的数据库: [{"Database":"db1","Table":["table1","table2"]},{"Database":"db2"}] 对于database-schema-table三级结构: [{"Database":"db1","Schema":"s1","Table":["table1","table2"]},{"Database":"db1","Schema":"s2","Table":["table1","table2"]},{"Database":"db2","Schema":"s1","Table":["table1","table2"]},{"Database":"db3"},{"Database":"db4","Schema":"s1"}] 如果是'整个实例'的迁移模式,不需设置该字段 :rtype: str """ return self._DatabaseInfo @DatabaseInfo.setter def DatabaseInfo(self, DatabaseInfo): self._DatabaseInfo = DatabaseInfo @property def SrcNodeType(self): """源实例类型: ""或者"simple":主从节点,"cluster": 集群节点 :rtype: str """ return self._SrcNodeType @SrcNodeType.setter def SrcNodeType(self, SrcNodeType): self._SrcNodeType = SrcNodeType @property def SrcInfoMulti(self): """源实例信息,具体内容跟迁移任务类型相关 :rtype: list of SrcInfo """ return self._SrcInfoMulti @SrcInfoMulti.setter def SrcInfoMulti(self, SrcInfoMulti): self._SrcInfoMulti = SrcInfoMulti def _deserialize(self, params): self._JobId = params.get("JobId") self._JobName = params.get("JobName") if params.get("MigrateOption") is not None: self._MigrateOption = MigrateOption() self._MigrateOption._deserialize(params.get("MigrateOption")) self._SrcAccessType = params.get("SrcAccessType") if params.get("SrcInfo") is not None: self._SrcInfo = SrcInfo() self._SrcInfo._deserialize(params.get("SrcInfo")) self._DstAccessType = params.get("DstAccessType") if params.get("DstInfo") is not None: self._DstInfo = DstInfo() self._DstInfo._deserialize(params.get("DstInfo")) self._DatabaseInfo = params.get("DatabaseInfo") self._SrcNodeType = params.get("SrcNodeType") if params.get("SrcInfoMulti") is not None: self._SrcInfoMulti = [] for item in params.get("SrcInfoMulti"): obj = SrcInfo() obj._deserialize(item) self._SrcInfoMulti.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifyMigrateJobResponse(AbstractModel): """ModifyMigrateJob返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifySubscribeAutoRenewFlagRequest(AbstractModel): """ModifySubscribeAutoRenewFlag请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 订阅实例ID,例如:subs-8uey736k :type SubscribeId: str :param _AutoRenewFlag: 自动续费标识。1-自动续费,0-不自动续费 :type AutoRenewFlag: int """ self._SubscribeId = None self._AutoRenewFlag = None @property def SubscribeId(self): """订阅实例ID,例如:subs-8uey736k :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId @property def AutoRenewFlag(self): """自动续费标识。1-自动续费,0-不自动续费 :rtype: int """ return self._AutoRenewFlag @AutoRenewFlag.setter def AutoRenewFlag(self, AutoRenewFlag): self._AutoRenewFlag = AutoRenewFlag def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") self._AutoRenewFlag = params.get("AutoRenewFlag") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifySubscribeAutoRenewFlagResponse(AbstractModel): """ModifySubscribeAutoRenewFlag返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifySubscribeConsumeTimeRequest(AbstractModel): """ModifySubscribeConsumeTime请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 数据订阅实例的ID :type SubscribeId: str :param _ConsumeStartTime: 消费时间起点,也即是指定订阅数据的时间起点,时间格式如:Y-m-d h:m:s,取值范围为过去24小时之内 :type ConsumeStartTime: str """ self._SubscribeId = None self._ConsumeStartTime = None @property def SubscribeId(self): """数据订阅实例的ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId @property def ConsumeStartTime(self): """消费时间起点,也即是指定订阅数据的时间起点,时间格式如:Y-m-d h:m:s,取值范围为过去24小时之内 :rtype: str """ return self._ConsumeStartTime @ConsumeStartTime.setter def ConsumeStartTime(self, ConsumeStartTime): self._ConsumeStartTime = ConsumeStartTime def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") self._ConsumeStartTime = params.get("ConsumeStartTime") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifySubscribeConsumeTimeResponse(AbstractModel): """ModifySubscribeConsumeTime返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifySubscribeNameRequest(AbstractModel): """ModifySubscribeName请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 数据订阅实例的ID :type SubscribeId: str :param _SubscribeName: 数据订阅实例的名称,长度限制为[1,60] :type SubscribeName: str """ self._SubscribeId = None self._SubscribeName = None @property def SubscribeId(self): """数据订阅实例的ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId @property def SubscribeName(self): """数据订阅实例的名称,长度限制为[1,60] :rtype: str """ return self._SubscribeName @SubscribeName.setter def SubscribeName(self, SubscribeName): self._SubscribeName = SubscribeName def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") self._SubscribeName = params.get("SubscribeName") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifySubscribeNameResponse(AbstractModel): """ModifySubscribeName返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ModifySubscribeObjectsRequest(AbstractModel): """ModifySubscribeObjects请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 数据订阅实例的ID :type SubscribeId: str :param _SubscribeObjectType: 数据订阅的类型,可选的值有:0 - 全实例订阅;1 - 数据订阅;2 - 结构订阅;3 - 数据订阅+结构订阅 :type SubscribeObjectType: int :param _Objects: 订阅的数据库表信息 :type Objects: list of SubscribeObject """ self._SubscribeId = None self._SubscribeObjectType = None self._Objects = None @property def SubscribeId(self): """数据订阅实例的ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId @property def SubscribeObjectType(self): """数据订阅的类型,可选的值有:0 - 全实例订阅;1 - 数据订阅;2 - 结构订阅;3 - 数据订阅+结构订阅 :rtype: int """ return self._SubscribeObjectType @SubscribeObjectType.setter def SubscribeObjectType(self, SubscribeObjectType): self._SubscribeObjectType = SubscribeObjectType @property def Objects(self): """订阅的数据库表信息 :rtype: list of SubscribeObject """ return self._Objects @Objects.setter def Objects(self, Objects): self._Objects = Objects def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") self._SubscribeObjectType = params.get("SubscribeObjectType") if params.get("Objects") is not None: self._Objects = [] for item in params.get("Objects"): obj = SubscribeObject() obj._deserialize(item) self._Objects.append(obj) memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifySubscribeObjectsResponse(AbstractModel): """ModifySubscribeObjects返回参数结构体 """ def __init__(self): r""" :param _AsyncRequestId: 异步任务的ID :type AsyncRequestId: str :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._AsyncRequestId = None self._RequestId = None @property def AsyncRequestId(self): """异步任务的ID :rtype: str """ return self._AsyncRequestId @AsyncRequestId.setter def AsyncRequestId(self, AsyncRequestId): self._AsyncRequestId = AsyncRequestId @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._AsyncRequestId = params.get("AsyncRequestId") self._RequestId = params.get("RequestId") class ModifySubscribeVipVportRequest(AbstractModel): """ModifySubscribeVipVport请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 数据订阅实例的ID :type SubscribeId: str :param _DstUniqSubnetId: 指定目的子网,如果传此参数,DstIp必须在目的子网内 :type DstUniqSubnetId: str :param _DstIp: 目标IP,与DstPort至少传一个 :type DstIp: str :param _DstPort: 目标PORT,支持范围为:[1025-65535] :type DstPort: int """ self._SubscribeId = None self._DstUniqSubnetId = None self._DstIp = None self._DstPort = None @property def SubscribeId(self): """数据订阅实例的ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId @property def DstUniqSubnetId(self): """指定目的子网,如果传此参数,DstIp必须在目的子网内 :rtype: str """ return self._DstUniqSubnetId @DstUniqSubnetId.setter def DstUniqSubnetId(self, DstUniqSubnetId): self._DstUniqSubnetId = DstUniqSubnetId @property def DstIp(self): """目标IP,与DstPort至少传一个 :rtype: str """ return self._DstIp @DstIp.setter def DstIp(self, DstIp): self._DstIp = DstIp @property def DstPort(self): """目标PORT,支持范围为:[1025-65535] :rtype: int """ return self._DstPort @DstPort.setter def DstPort(self, DstPort): self._DstPort = DstPort def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") self._DstUniqSubnetId = params.get("DstUniqSubnetId") self._DstIp = params.get("DstIp") self._DstPort = params.get("DstPort") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ModifySubscribeVipVportResponse(AbstractModel): """ModifySubscribeVipVport返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class OfflineIsolatedSubscribeRequest(AbstractModel): """OfflineIsolatedSubscribe请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 数据订阅实例的ID :type SubscribeId: str """ self._SubscribeId = None @property def SubscribeId(self): """数据订阅实例的ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class OfflineIsolatedSubscribeResponse(AbstractModel): """OfflineIsolatedSubscribe返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class ResetSubscribeRequest(AbstractModel): """ResetSubscribe请求参数结构体 """ def __init__(self): r""" :param _SubscribeId: 数据订阅实例的ID :type SubscribeId: str """ self._SubscribeId = None @property def SubscribeId(self): """数据订阅实例的ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class ResetSubscribeResponse(AbstractModel): """ResetSubscribe返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class SrcInfo(AbstractModel): """源实例信息 """ def __init__(self): r""" :param _AccessKey: 阿里云AccessKey。源库是阿里云RDS5.6适用 :type AccessKey: str :param _Ip: 实例的IP地址 :type Ip: str :param _Port: 实例的端口 :type Port: int :param _User: 实例的用户名 :type User: str :param _Password: 实例的密码 :type Password: str :param _RdsInstanceId: 阿里云RDS实例ID。源库是阿里云RDS5.6/5.6适用 :type RdsInstanceId: str :param _CvmInstanceId: CVM实例短ID,格式如:ins-olgl39y8,与云服务器控制台页面显示的实例ID相同。如果是CVM自建实例,需要传递此字段 :type CvmInstanceId: str :param _UniqDcgId: 专线网关ID,格式如:dcg-0rxtqqxb :type UniqDcgId: str :param _VpcId: 私有网络ID,格式如:vpc-92jblxto :type VpcId: str :param _SubnetId: 私有网络下的子网ID,格式如:subnet-3paxmkdz :type SubnetId: str :param _UniqVpnGwId: VPN网关ID,格式如:vpngw-9ghexg7q :type UniqVpnGwId: str :param _InstanceId: 数据库实例ID,格式如:cdb-powiqx8q :type InstanceId: str :param _Region: 地域英文名,如:ap-guangzhou :type Region: str :param _Supplier: 当实例为RDS实例时,填写为aliyun, 其他情况均填写others :type Supplier: str :param _CcnId: 云联网ID,如:ccn-afp6kltc 注意:此字段可能返回 null,表示取不到有效值。 :type CcnId: str :param _EngineVersion: 数据库版本,当实例为RDS实例时才有效,格式如:5.6或者5.7,默认为5.6 :type EngineVersion: str """ self._AccessKey = None self._Ip = None self._Port = None self._User = None self._Password = None self._RdsInstanceId = None self._CvmInstanceId = None self._UniqDcgId = None self._VpcId = None self._SubnetId = None self._UniqVpnGwId = None self._InstanceId = None self._Region = None self._Supplier = None self._CcnId = None self._EngineVersion = None @property def AccessKey(self): """阿里云AccessKey。源库是阿里云RDS5.6适用 :rtype: str """ return self._AccessKey @AccessKey.setter def AccessKey(self, AccessKey): self._AccessKey = AccessKey @property def Ip(self): """实例的IP地址 :rtype: str """ return self._Ip @Ip.setter def Ip(self, Ip): self._Ip = Ip @property def Port(self): """实例的端口 :rtype: int """ return self._Port @Port.setter def Port(self, Port): self._Port = Port @property def User(self): """实例的用户名 :rtype: str """ return self._User @User.setter def User(self, User): self._User = User @property def Password(self): """实例的密码 :rtype: str """ return self._Password @Password.setter def Password(self, Password): self._Password = Password @property def RdsInstanceId(self): """阿里云RDS实例ID。源库是阿里云RDS5.6/5.6适用 :rtype: str """ return self._RdsInstanceId @RdsInstanceId.setter def RdsInstanceId(self, RdsInstanceId): self._RdsInstanceId = RdsInstanceId @property def CvmInstanceId(self): """CVM实例短ID,格式如:ins-olgl39y8,与云服务器控制台页面显示的实例ID相同。如果是CVM自建实例,需要传递此字段 :rtype: str """ return self._CvmInstanceId @CvmInstanceId.setter def CvmInstanceId(self, CvmInstanceId): self._CvmInstanceId = CvmInstanceId @property def UniqDcgId(self): """专线网关ID,格式如:dcg-0rxtqqxb :rtype: str """ return self._UniqDcgId @UniqDcgId.setter def UniqDcgId(self, UniqDcgId): self._UniqDcgId = UniqDcgId @property def VpcId(self): """私有网络ID,格式如:vpc-92jblxto :rtype: str """ return self._VpcId @VpcId.setter def VpcId(self, VpcId): self._VpcId = VpcId @property def SubnetId(self): """私有网络下的子网ID,格式如:subnet-3paxmkdz :rtype: str """ return self._SubnetId @SubnetId.setter def SubnetId(self, SubnetId): self._SubnetId = SubnetId @property def UniqVpnGwId(self): """VPN网关ID,格式如:vpngw-9ghexg7q :rtype: str """ return self._UniqVpnGwId @UniqVpnGwId.setter def UniqVpnGwId(self, UniqVpnGwId): self._UniqVpnGwId = UniqVpnGwId @property def InstanceId(self): """数据库实例ID,格式如:cdb-powiqx8q :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def Region(self): """地域英文名,如:ap-guangzhou :rtype: str """ return self._Region @Region.setter def Region(self, Region): self._Region = Region @property def Supplier(self): """当实例为RDS实例时,填写为aliyun, 其他情况均填写others :rtype: str """ return self._Supplier @Supplier.setter def Supplier(self, Supplier): self._Supplier = Supplier @property def CcnId(self): """云联网ID,如:ccn-afp6kltc 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._CcnId @CcnId.setter def CcnId(self, CcnId): self._CcnId = CcnId @property def EngineVersion(self): """数据库版本,当实例为RDS实例时才有效,格式如:5.6或者5.7,默认为5.6 :rtype: str """ return self._EngineVersion @EngineVersion.setter def EngineVersion(self, EngineVersion): self._EngineVersion = EngineVersion def _deserialize(self, params): self._AccessKey = params.get("AccessKey") self._Ip = params.get("Ip") self._Port = params.get("Port") self._User = params.get("User") self._Password = params.get("Password") self._RdsInstanceId = params.get("RdsInstanceId") self._CvmInstanceId = params.get("CvmInstanceId") self._UniqDcgId = params.get("UniqDcgId") self._VpcId = params.get("VpcId") self._SubnetId = params.get("SubnetId") self._UniqVpnGwId = params.get("UniqVpnGwId") self._InstanceId = params.get("InstanceId") self._Region = params.get("Region") self._Supplier = params.get("Supplier") self._CcnId = params.get("CcnId") self._EngineVersion = params.get("EngineVersion") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class StartMigrateJobRequest(AbstractModel): """StartMigrateJob请求参数结构体 """ def __init__(self): r""" :param _JobId: 数据迁移任务ID :type JobId: str """ self._JobId = None @property def JobId(self): """数据迁移任务ID :rtype: str """ return self._JobId @JobId.setter def JobId(self, JobId): self._JobId = JobId def _deserialize(self, params): self._JobId = params.get("JobId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class StartMigrateJobResponse(AbstractModel): """StartMigrateJob返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class StopMigrateJobRequest(AbstractModel): """StopMigrateJob请求参数结构体 """ def __init__(self): r""" :param _JobId: 数据迁移任务ID :type JobId: str """ self._JobId = None @property def JobId(self): """数据迁移任务ID :rtype: str """ return self._JobId @JobId.setter def JobId(self, JobId): self._JobId = JobId def _deserialize(self, params): self._JobId = params.get("JobId") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class StopMigrateJobResponse(AbstractModel): """StopMigrateJob返回参数结构体 """ def __init__(self): r""" :param _RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :type RequestId: str """ self._RequestId = None @property def RequestId(self): """唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。 :rtype: str """ return self._RequestId @RequestId.setter def RequestId(self, RequestId): self._RequestId = RequestId def _deserialize(self, params): self._RequestId = params.get("RequestId") class SubsErr(AbstractModel): """查询订阅配置的错误信息 """ def __init__(self): r""" :param _Message: 错误信息 注意:此字段可能返回 null,表示取不到有效值。 :type Message: str """ self._Message = None @property def Message(self): """错误信息 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._Message @Message.setter def Message(self, Message): self._Message = Message def _deserialize(self, params): self._Message = params.get("Message") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class SubscribeInfo(AbstractModel): """订阅实例信息 """ def __init__(self): r""" :param _SubscribeId: 数据订阅的实例ID :type SubscribeId: str :param _SubscribeName: 数据订阅实例的名称 :type SubscribeName: str :param _ChannelId: 数据订阅实例绑定的通道ID。kafka版订阅就是kafka topic :type ChannelId: str :param _Product: 订阅实例的类型,目前支持 cynosdbmysql,mariadb,mongodb,mysql,percona,tdpg,tdsqlpercona(tdsqlmysql) :type Product: str :param _InstanceId: 数据订阅实例绑定的数据库实例ID :type InstanceId: str :param _InstanceStatus: 云数据库状态:running 运行中,isolated 已隔离,offline 已下线。如果不是云上,此值为空 :type InstanceStatus: str :param _SubsStatus: 数据订阅状态,可能的值为:未启动 notStarted, 校验中 checking, 校验不通过 checkNotPass, 校验通过 checkPass, 启动中 starting, 运行中 running, 异常出错 error :type SubsStatus: str :param _ModifyTime: 上次修改时间,时间格式如:Y-m-d h:m:s :type ModifyTime: str :param _CreateTime: 创建时间 :type CreateTime: str :param _IsolateTime: 隔离时间,时间格式如:Y-m-d h:m:s :type IsolateTime: str :param _ExpireTime: 包年包月任务的到期时间,时间格式如:Y-m-d h:m:s。默认:0000-00-00 00:00:00 :type ExpireTime: str :param _OfflineTime: 下线时间 :type OfflineTime: str :param _ConsumeStartTime: 最近一次修改的消费时间起点,如果从未修改则为零值 :type ConsumeStartTime: str :param _AutoRenewFlag: 自动续费标识。只有当 PayType=0,该值才有意义。枚举值:0-不自动续费,1-自动续费 注意:此字段可能返回 null,表示取不到有效值。 :type AutoRenewFlag: int :param _Region: 数据订阅实例所属地域 :type Region: str :param _PayType: 计费方式,0 - 包年包月,1 - 按量计费 :type PayType: int :param _Vip: 旧版订阅通道的vip :type Vip: str :param _Vport: 数据订阅实例的Vport :type Vport: int :param _UniqVpcId: 数据订阅实例Vip所在VPC的唯一ID :type UniqVpcId: str :param _UniqSubnetId: 数据订阅实例Vip所在子网的唯一ID :type UniqSubnetId: str :param _Status: 数据订阅生命周期状态,可能的值为:正常 normal, 隔离中 isolating, 已隔离 isolated, 下线中 offlining, 按量转包年包月中 post2PrePayIng :type Status: str :param _SdkConsumedTime: SDK最后一条确认消息的时间戳,如果SDK一直消费,也可以作为SDK当前消费时间点 :type SdkConsumedTime: str :param _Tags: 标签 注意:此字段可能返回 null,表示取不到有效值。 :type Tags: list of TagItem :param _SubscribeVersion: 订阅实例版本;txdts-旧版数据订阅,kafka-kafka版本数据订阅 注意:此字段可能返回 null,表示取不到有效值。 :type SubscribeVersion: str """ self._SubscribeId = None self._SubscribeName = None self._ChannelId = None self._Product = None self._InstanceId = None self._InstanceStatus = None self._SubsStatus = None self._ModifyTime = None self._CreateTime = None self._IsolateTime = None self._ExpireTime = None self._OfflineTime = None self._ConsumeStartTime = None self._AutoRenewFlag = None self._Region = None self._PayType = None self._Vip = None self._Vport = None self._UniqVpcId = None self._UniqSubnetId = None self._Status = None self._SdkConsumedTime = None self._Tags = None self._SubscribeVersion = None @property def SubscribeId(self): """数据订阅的实例ID :rtype: str """ return self._SubscribeId @SubscribeId.setter def SubscribeId(self, SubscribeId): self._SubscribeId = SubscribeId @property def SubscribeName(self): """数据订阅实例的名称 :rtype: str """ return self._SubscribeName @SubscribeName.setter def SubscribeName(self, SubscribeName): self._SubscribeName = SubscribeName @property def ChannelId(self): """数据订阅实例绑定的通道ID。kafka版订阅就是kafka topic :rtype: str """ return self._ChannelId @ChannelId.setter def ChannelId(self, ChannelId): self._ChannelId = ChannelId @property def Product(self): """订阅实例的类型,目前支持 cynosdbmysql,mariadb,mongodb,mysql,percona,tdpg,tdsqlpercona(tdsqlmysql) :rtype: str """ return self._Product @Product.setter def Product(self, Product): self._Product = Product @property def InstanceId(self): """数据订阅实例绑定的数据库实例ID :rtype: str """ return self._InstanceId @InstanceId.setter def InstanceId(self, InstanceId): self._InstanceId = InstanceId @property def InstanceStatus(self): """云数据库状态:running 运行中,isolated 已隔离,offline 已下线。如果不是云上,此值为空 :rtype: str """ return self._InstanceStatus @InstanceStatus.setter def InstanceStatus(self, InstanceStatus): self._InstanceStatus = InstanceStatus @property def SubsStatus(self): """数据订阅状态,可能的值为:未启动 notStarted, 校验中 checking, 校验不通过 checkNotPass, 校验通过 checkPass, 启动中 starting, 运行中 running, 异常出错 error :rtype: str """ return self._SubsStatus @SubsStatus.setter def SubsStatus(self, SubsStatus): self._SubsStatus = SubsStatus @property def ModifyTime(self): """上次修改时间,时间格式如:Y-m-d h:m:s :rtype: str """ return self._ModifyTime @ModifyTime.setter def ModifyTime(self, ModifyTime): self._ModifyTime = ModifyTime @property def CreateTime(self): """创建时间 :rtype: str """ return self._CreateTime @CreateTime.setter def CreateTime(self, CreateTime): self._CreateTime = CreateTime @property def IsolateTime(self): """隔离时间,时间格式如:Y-m-d h:m:s :rtype: str """ return self._IsolateTime @IsolateTime.setter def IsolateTime(self, IsolateTime): self._IsolateTime = IsolateTime @property def ExpireTime(self): """包年包月任务的到期时间,时间格式如:Y-m-d h:m:s。默认:0000-00-00 00:00:00 :rtype: str """ return self._ExpireTime @ExpireTime.setter def ExpireTime(self, ExpireTime): self._ExpireTime = ExpireTime @property def OfflineTime(self): """下线时间 :rtype: str """ return self._OfflineTime @OfflineTime.setter def OfflineTime(self, OfflineTime): self._OfflineTime = OfflineTime @property def ConsumeStartTime(self): """最近一次修改的消费时间起点,如果从未修改则为零值 :rtype: str """ return self._ConsumeStartTime @ConsumeStartTime.setter def ConsumeStartTime(self, ConsumeStartTime): self._ConsumeStartTime = ConsumeStartTime @property def AutoRenewFlag(self): """自动续费标识。只有当 PayType=0,该值才有意义。枚举值:0-不自动续费,1-自动续费 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._AutoRenewFlag @AutoRenewFlag.setter def AutoRenewFlag(self, AutoRenewFlag): self._AutoRenewFlag = AutoRenewFlag @property def Region(self): """数据订阅实例所属地域 :rtype: str """ return self._Region @Region.setter def Region(self, Region): self._Region = Region @property def PayType(self): """计费方式,0 - 包年包月,1 - 按量计费 :rtype: int """ return self._PayType @PayType.setter def PayType(self, PayType): self._PayType = PayType @property def Vip(self): """旧版订阅通道的vip :rtype: str """ return self._Vip @Vip.setter def Vip(self, Vip): self._Vip = Vip @property def Vport(self): """数据订阅实例的Vport :rtype: int """ return self._Vport @Vport.setter def Vport(self, Vport): self._Vport = Vport @property def UniqVpcId(self): """数据订阅实例Vip所在VPC的唯一ID :rtype: str """ return self._UniqVpcId @UniqVpcId.setter def UniqVpcId(self, UniqVpcId): self._UniqVpcId = UniqVpcId @property def UniqSubnetId(self): """数据订阅实例Vip所在子网的唯一ID :rtype: str """ return self._UniqSubnetId @UniqSubnetId.setter def UniqSubnetId(self, UniqSubnetId): self._UniqSubnetId = UniqSubnetId @property def Status(self): """数据订阅生命周期状态,可能的值为:正常 normal, 隔离中 isolating, 已隔离 isolated, 下线中 offlining, 按量转包年包月中 post2PrePayIng :rtype: str """ return self._Status @Status.setter def Status(self, Status): self._Status = Status @property def SdkConsumedTime(self): """SDK最后一条确认消息的时间戳,如果SDK一直消费,也可以作为SDK当前消费时间点 :rtype: str """ return self._SdkConsumedTime @SdkConsumedTime.setter def SdkConsumedTime(self, SdkConsumedTime): self._SdkConsumedTime = SdkConsumedTime @property def Tags(self): """标签 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of TagItem """ return self._Tags @Tags.setter def Tags(self, Tags): self._Tags = Tags @property def SubscribeVersion(self): """订阅实例版本;txdts-旧版数据订阅,kafka-kafka版本数据订阅 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._SubscribeVersion @SubscribeVersion.setter def SubscribeVersion(self, SubscribeVersion): self._SubscribeVersion = SubscribeVersion def _deserialize(self, params): self._SubscribeId = params.get("SubscribeId") self._SubscribeName = params.get("SubscribeName") self._ChannelId = params.get("ChannelId") self._Product = params.get("Product") self._InstanceId = params.get("InstanceId") self._InstanceStatus = params.get("InstanceStatus") self._SubsStatus = params.get("SubsStatus") self._ModifyTime = params.get("ModifyTime") self._CreateTime = params.get("CreateTime") self._IsolateTime = params.get("IsolateTime") self._ExpireTime = params.get("ExpireTime") self._OfflineTime = params.get("OfflineTime") self._ConsumeStartTime = params.get("ConsumeStartTime") self._AutoRenewFlag = params.get("AutoRenewFlag") self._Region = params.get("Region") self._PayType = params.get("PayType") self._Vip = params.get("Vip") self._Vport = params.get("Vport") self._UniqVpcId = params.get("UniqVpcId") self._UniqSubnetId = params.get("UniqSubnetId") self._Status = params.get("Status") self._SdkConsumedTime = params.get("SdkConsumedTime") if params.get("Tags") is not None: self._Tags = [] for item in params.get("Tags"): obj = TagItem() obj._deserialize(item) self._Tags.append(obj) self._SubscribeVersion = params.get("SubscribeVersion") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class SubscribeObject(AbstractModel): """数据订阅的对象 """ def __init__(self): r""" :param _ObjectsType: 数据订阅对象的类型,0-数据库,1-数据库内的表 注意:此字段可能返回 null,表示取不到有效值。 :type ObjectsType: int :param _DatabaseName: 订阅数据库的名称 注意:此字段可能返回 null,表示取不到有效值。 :type DatabaseName: str :param _TableNames: 订阅数据库中表名称数组 注意:此字段可能返回 null,表示取不到有效值。 :type TableNames: list of str """ self._ObjectsType = None self._DatabaseName = None self._TableNames = None @property def ObjectsType(self): """数据订阅对象的类型,0-数据库,1-数据库内的表 注意:此字段可能返回 null,表示取不到有效值。 :rtype: int """ return self._ObjectsType @ObjectsType.setter def ObjectsType(self, ObjectsType): self._ObjectsType = ObjectsType @property def DatabaseName(self): """订阅数据库的名称 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._DatabaseName @DatabaseName.setter def DatabaseName(self, DatabaseName): self._DatabaseName = DatabaseName @property def TableNames(self): """订阅数据库中表名称数组 注意:此字段可能返回 null,表示取不到有效值。 :rtype: list of str """ return self._TableNames @TableNames.setter def TableNames(self, TableNames): self._TableNames = TableNames def _deserialize(self, params): self._ObjectsType = params.get("ObjectsType") self._DatabaseName = params.get("DatabaseName") self._TableNames = params.get("TableNames") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class TagFilter(AbstractModel): """标签过滤 """ def __init__(self): r""" :param _TagKey: 标签键值 :type TagKey: str :param _TagValue: 标签值 :type TagValue: list of str """ self._TagKey = None self._TagValue = None @property def TagKey(self): """标签键值 :rtype: str """ return self._TagKey @TagKey.setter def TagKey(self, TagKey): self._TagKey = TagKey @property def TagValue(self): """标签值 :rtype: list of str """ return self._TagValue @TagValue.setter def TagValue(self, TagValue): self._TagValue = TagValue def _deserialize(self, params): self._TagKey = params.get("TagKey") self._TagValue = params.get("TagValue") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set)) class TagItem(AbstractModel): """标签 """ def __init__(self): r""" :param _TagKey: 标签键值 :type TagKey: str :param _TagValue: 标签值 注意:此字段可能返回 null,表示取不到有效值。 :type TagValue: str """ self._TagKey = None self._TagValue = None @property def TagKey(self): """标签键值 :rtype: str """ return self._TagKey @TagKey.setter def TagKey(self, TagKey): self._TagKey = TagKey @property def TagValue(self): """标签值 注意:此字段可能返回 null,表示取不到有效值。 :rtype: str """ return self._TagValue @TagValue.setter def TagValue(self, TagValue): self._TagValue = TagValue def _deserialize(self, params): self._TagKey = params.get("TagKey") self._TagValue = params.get("TagValue") memeber_set = set(params.keys()) for name, value in vars(self).items(): property_name = name[1:] if property_name in memeber_set: memeber_set.remove(property_name) if len(memeber_set) > 0: warnings.warn("%s fileds are useless." % ",".join(memeber_set))
Memory