# -*- 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 json from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException from tencentcloud.common.abstract_client import AbstractClient from tencentcloud.tdcpg.v20211118 import models class TdcpgClient(AbstractClient): _apiVersion = '2021-11-18' _endpoint = 'tdcpg.tencentcloudapi.com' _service = 'tdcpg' def CloneClusterToPointInTime(self, request): """使用指定时间点的备份克隆一个新的集群 :param request: Request instance for CloneClusterToPointInTime. :type request: :class:`tencentcloud.tdcpg.v20211118.models.CloneClusterToPointInTimeRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.CloneClusterToPointInTimeResponse` """ try: params = request._serialize() headers = request.headers body = self.call("CloneClusterToPointInTime", params, headers=headers) response = json.loads(body) model = models.CloneClusterToPointInTimeResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def CreateCluster(self, request): """创建集群 :param request: Request instance for CreateCluster. :type request: :class:`tencentcloud.tdcpg.v20211118.models.CreateClusterRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.CreateClusterResponse` """ try: params = request._serialize() headers = request.headers body = self.call("CreateCluster", params, headers=headers) response = json.loads(body) model = models.CreateClusterResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def CreateClusterInstances(self, request): """在集群中新建实例 :param request: Request instance for CreateClusterInstances. :type request: :class:`tencentcloud.tdcpg.v20211118.models.CreateClusterInstancesRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.CreateClusterInstancesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("CreateClusterInstances", params, headers=headers) response = json.loads(body) model = models.CreateClusterInstancesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DeleteCluster(self, request): """删除集群,集群中的实例和数据都将被删除,且无法恢复。只有当集群状态处于isolated(已隔离)时才生效。 :param request: Request instance for DeleteCluster. :type request: :class:`tencentcloud.tdcpg.v20211118.models.DeleteClusterRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.DeleteClusterResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DeleteCluster", params, headers=headers) response = json.loads(body) model = models.DeleteClusterResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DeleteClusterInstances(self, request): """删除实例。只有当实例状态处于isolated(已隔离)时才生效。 :param request: Request instance for DeleteClusterInstances. :type request: :class:`tencentcloud.tdcpg.v20211118.models.DeleteClusterInstancesRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.DeleteClusterInstancesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DeleteClusterInstances", params, headers=headers) response = json.loads(body) model = models.DeleteClusterInstancesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeAccounts(self, request): """查询数据库账号信息 :param request: Request instance for DescribeAccounts. :type request: :class:`tencentcloud.tdcpg.v20211118.models.DescribeAccountsRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.DescribeAccountsResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeAccounts", params, headers=headers) response = json.loads(body) model = models.DescribeAccountsResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeClusterBackups(self, request): """查询集群的备份集 :param request: Request instance for DescribeClusterBackups. :type request: :class:`tencentcloud.tdcpg.v20211118.models.DescribeClusterBackupsRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.DescribeClusterBackupsResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeClusterBackups", params, headers=headers) response = json.loads(body) model = models.DescribeClusterBackupsResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeClusterEndpoints(self, request): """查询集群接入点信息 :param request: Request instance for DescribeClusterEndpoints. :type request: :class:`tencentcloud.tdcpg.v20211118.models.DescribeClusterEndpointsRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.DescribeClusterEndpointsResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeClusterEndpoints", params, headers=headers) response = json.loads(body) model = models.DescribeClusterEndpointsResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeClusterInstances(self, request): """查询实例 :param request: Request instance for DescribeClusterInstances. :type request: :class:`tencentcloud.tdcpg.v20211118.models.DescribeClusterInstancesRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.DescribeClusterInstancesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeClusterInstances", params, headers=headers) response = json.loads(body) model = models.DescribeClusterInstancesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeClusterRecoveryTimeRange(self, request): """查询集群可回档时间范围 :param request: Request instance for DescribeClusterRecoveryTimeRange. :type request: :class:`tencentcloud.tdcpg.v20211118.models.DescribeClusterRecoveryTimeRangeRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.DescribeClusterRecoveryTimeRangeResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeClusterRecoveryTimeRange", params, headers=headers) response = json.loads(body) model = models.DescribeClusterRecoveryTimeRangeResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeClusters(self, request): """查询集群 :param request: Request instance for DescribeClusters. :type request: :class:`tencentcloud.tdcpg.v20211118.models.DescribeClustersRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.DescribeClustersResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeClusters", params, headers=headers) response = json.loads(body) model = models.DescribeClustersResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def DescribeResourcesByDealName(self, request): """根据订单号获取资源信息 :param request: Request instance for DescribeResourcesByDealName. :type request: :class:`tencentcloud.tdcpg.v20211118.models.DescribeResourcesByDealNameRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.DescribeResourcesByDealNameResponse` """ try: params = request._serialize() headers = request.headers body = self.call("DescribeResourcesByDealName", params, headers=headers) response = json.loads(body) model = models.DescribeResourcesByDealNameResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def IsolateCluster(self, request): """隔离集群,集群的接入点网络将会断掉无法连接使用数据库。只有当集群状态处于running(运行中)时才生效。 :param request: Request instance for IsolateCluster. :type request: :class:`tencentcloud.tdcpg.v20211118.models.IsolateClusterRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.IsolateClusterResponse` """ try: params = request._serialize() headers = request.headers body = self.call("IsolateCluster", params, headers=headers) response = json.loads(body) model = models.IsolateClusterResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def IsolateClusterInstances(self, request): """隔离实例。此接口只针对状态为running的实例生效,使用场景包括: - 批量隔离集群内所有的实例 - 在读写实例为running(运行中)时,单个/批量隔离只读实例 - 集群内所有只读实例为isolated(已隔离)时,单独隔离读写实例 :param request: Request instance for IsolateClusterInstances. :type request: :class:`tencentcloud.tdcpg.v20211118.models.IsolateClusterInstancesRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.IsolateClusterInstancesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("IsolateClusterInstances", params, headers=headers) response = json.loads(body) model = models.IsolateClusterInstancesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def ModifyAccountDescription(self, request): """修改数据库账号描述 :param request: Request instance for ModifyAccountDescription. :type request: :class:`tencentcloud.tdcpg.v20211118.models.ModifyAccountDescriptionRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.ModifyAccountDescriptionResponse` """ try: params = request._serialize() headers = request.headers body = self.call("ModifyAccountDescription", params, headers=headers) response = json.loads(body) model = models.ModifyAccountDescriptionResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def ModifyClusterEndpointWanStatus(self, request): """开启或者关闭接入点外网 :param request: Request instance for ModifyClusterEndpointWanStatus. :type request: :class:`tencentcloud.tdcpg.v20211118.models.ModifyClusterEndpointWanStatusRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.ModifyClusterEndpointWanStatusResponse` """ try: params = request._serialize() headers = request.headers body = self.call("ModifyClusterEndpointWanStatus", params, headers=headers) response = json.loads(body) model = models.ModifyClusterEndpointWanStatusResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def ModifyClusterInstancesSpec(self, request): """修改实例规格,此接口只针对状态为running(运行中)的实例生效 :param request: Request instance for ModifyClusterInstancesSpec. :type request: :class:`tencentcloud.tdcpg.v20211118.models.ModifyClusterInstancesSpecRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.ModifyClusterInstancesSpecResponse` """ try: params = request._serialize() headers = request.headers body = self.call("ModifyClusterInstancesSpec", params, headers=headers) response = json.loads(body) model = models.ModifyClusterInstancesSpecResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def ModifyClusterName(self, request): """修改集群名字 :param request: Request instance for ModifyClusterName. :type request: :class:`tencentcloud.tdcpg.v20211118.models.ModifyClusterNameRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.ModifyClusterNameResponse` """ try: params = request._serialize() headers = request.headers body = self.call("ModifyClusterName", params, headers=headers) response = json.loads(body) model = models.ModifyClusterNameResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def ModifyClustersAutoRenewFlag(self, request): """修改集群自动续费,只对预付费集群生效。 :param request: Request instance for ModifyClustersAutoRenewFlag. :type request: :class:`tencentcloud.tdcpg.v20211118.models.ModifyClustersAutoRenewFlagRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.ModifyClustersAutoRenewFlagResponse` """ try: params = request._serialize() headers = request.headers body = self.call("ModifyClustersAutoRenewFlag", params, headers=headers) response = json.loads(body) model = models.ModifyClustersAutoRenewFlagResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def RecoverCluster(self, request): """恢复集群,恢复集群的接入点网络,恢复后继续连接使用数据库。只有当集群状态处于isolated(已隔离)时才生效。 :param request: Request instance for RecoverCluster. :type request: :class:`tencentcloud.tdcpg.v20211118.models.RecoverClusterRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.RecoverClusterResponse` """ try: params = request._serialize() headers = request.headers body = self.call("RecoverCluster", params, headers=headers) response = json.loads(body) model = models.RecoverClusterResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def RecoverClusterInstances(self, request): """恢复实例。此接口的使用场景包括: - 读写实例状态为running(运行中)时,批量恢复状态为isolated(已隔离)的只读实例 - 读写实例状态为isolated(已隔离)时,恢复读写实例 - 读写实例状态为isolated(已隔离)时,批量恢复读写实例以及状态为isolated(已隔离)的只读实例 :param request: Request instance for RecoverClusterInstances. :type request: :class:`tencentcloud.tdcpg.v20211118.models.RecoverClusterInstancesRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.RecoverClusterInstancesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("RecoverClusterInstances", params, headers=headers) response = json.loads(body) model = models.RecoverClusterInstancesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def RenewCluster(self, request): """续费集群 :param request: Request instance for RenewCluster. :type request: :class:`tencentcloud.tdcpg.v20211118.models.RenewClusterRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.RenewClusterResponse` """ try: params = request._serialize() headers = request.headers body = self.call("RenewCluster", params, headers=headers) response = json.loads(body) model = models.RenewClusterResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def ResetAccountPassword(self, request): """重置数据库账号密码 :param request: Request instance for ResetAccountPassword. :type request: :class:`tencentcloud.tdcpg.v20211118.models.ResetAccountPasswordRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.ResetAccountPasswordResponse` """ try: params = request._serialize() headers = request.headers body = self.call("ResetAccountPassword", params, headers=headers) response = json.loads(body) model = models.ResetAccountPasswordResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def RestartClusterInstances(self, request): """重启实例,此接口只针对状态为running(运行中)的实例生效。 :param request: Request instance for RestartClusterInstances. :type request: :class:`tencentcloud.tdcpg.v20211118.models.RestartClusterInstancesRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.RestartClusterInstancesResponse` """ try: params = request._serialize() headers = request.headers body = self.call("RestartClusterInstances", params, headers=headers) response = json.loads(body) model = models.RestartClusterInstancesResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e)) def TransformClusterPayMode(self, request): """转换集群付费模式,目前只支持从 后付费 转换成 与预付费。 :param request: Request instance for TransformClusterPayMode. :type request: :class:`tencentcloud.tdcpg.v20211118.models.TransformClusterPayModeRequest` :rtype: :class:`tencentcloud.tdcpg.v20211118.models.TransformClusterPayModeResponse` """ try: params = request._serialize() headers = request.headers body = self.call("TransformClusterPayMode", params, headers=headers) response = json.loads(body) model = models.TransformClusterPayModeResponse() model._deserialize(response["Response"]) return model except Exception as e: if isinstance(e, TencentCloudSDKException): raise else: raise TencentCloudSDKException(type(e).__name__, str(e))
Memory