dbs-20210101/alibabacloud_dbs20210101/client.py (584 lines of code) (raw):

# -*- coding: utf-8 -*- # This file is auto-generated, don't edit it. Thanks. from __future__ import unicode_literals from Tea.core import TeaCore from alibabacloud_tea_openapi.client import Client as OpenApiClient from alibabacloud_tea_openapi import models as open_api_models from alibabacloud_tea_util.client import Client as UtilClient from alibabacloud_endpoint_util.client import Client as EndpointUtilClient from alibabacloud_dbs20210101 import models as dbs_20210101_models from alibabacloud_tea_util import models as util_models from alibabacloud_openapi_util.client import Client as OpenApiUtilClient class Client(OpenApiClient): """ *\ """ def __init__(self, config): super(Client, self).__init__(config) self._endpoint_rule = 'regional' self._endpoint_map = { 'cn-qingdao': 'dbs-api.cn-hangzhou.aliyuncs.com', 'cn-beijing': 'dbs-api.cn-hangzhou.aliyuncs.com', 'cn-chengdu': 'dbs-api.cn-chengdu.aliyuncs.com', 'cn-zhangjiakou': 'dbs-api.cn-hangzhou.aliyuncs.com', 'cn-huhehaote': 'dbs-api.cn-huhehaote.aliyuncs.com', 'cn-hangzhou': 'dbs-api.cn-hangzhou.aliyuncs.com', 'cn-shanghai': 'dbs-api.cn-hangzhou.aliyuncs.com', 'cn-shenzhen': 'dbs-api.cn-hangzhou.aliyuncs.com', 'cn-hongkong': 'dbs-api.cn-hangzhou.aliyuncs.com', 'ap-southeast-1': 'dbs-api.ap-southeast-1.aliyuncs.com', 'ap-southeast-2': 'dbs-api.ap-southeast-2.aliyuncs.com', 'ap-southeast-3': 'dbs-api.ap-southeast-3.aliyuncs.com', 'ap-southeast-5': 'dbs-api.ap-southeast-5.aliyuncs.com', 'ap-northeast-1': 'dbs-api.ap-northeast-1.aliyuncs.com', 'us-west-1': 'dbs-api.cn-hangzhou.aliyuncs.com', 'us-east-1': 'dbs-api.cn-hangzhou.aliyuncs.com', 'eu-central-1': 'dbs-api.eu-central-1.aliyuncs.com', 'cn-hangzhou-finance': 'dbs-api.cn-hangzhou.aliyuncs.com', 'cn-shanghai-finance-1': 'dbs-api.cn-hangzhou.aliyuncs.com', 'cn-shenzhen-finance-1': 'dbs-api.cn-hangzhou.aliyuncs.com', 'ap-south-1': 'dbs-api.ap-south-1.aliyuncs.com', 'eu-west-1': 'dbs-api.eu-west-1.aliyuncs.com', 'me-east-1': 'dbs-api.me-east-1.aliyuncs.com' } self.check_config(config) self._endpoint = self.get_endpoint('dbs', self._region_id, self._endpoint_rule, self._network, self._suffix, self._endpoint_map, self._endpoint) def get_endpoint(self, product_id, region_id, endpoint_rule, network, suffix, endpoint_map, endpoint): if not UtilClient.empty(endpoint): return endpoint if not UtilClient.is_unset(endpoint_map) and not UtilClient.empty(endpoint_map.get(region_id)): return endpoint_map.get(region_id) return EndpointUtilClient.get_endpoint_rules(product_id, region_id, endpoint_rule, network, suffix) def change_resource_group_with_options(self, request, runtime): UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.client_token): query['ClientToken'] = request.client_token if not UtilClient.is_unset(request.new_resource_group_id): query['NewResourceGroupId'] = request.new_resource_group_id if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code if not UtilClient.is_unset(request.resource_id): query['ResourceId'] = request.resource_id if not UtilClient.is_unset(request.resource_type): query['ResourceType'] = request.resource_type req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='ChangeResourceGroup', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.ChangeResourceGroupResponse(), self.call_api(params, req, runtime) ) def change_resource_group(self, request): runtime = util_models.RuntimeOptions() return self.change_resource_group_with_options(request, runtime) def create_download_with_options(self, request, runtime): """ ### [](#)Supported database engines * ApsaraDB RDS for MySQL * ApsaraDB RDS for PostgreSQL * PolarDB for MySQL ### [](#)References For the instances that meet your business requirements, you can create an advanced download task by point in time or backup set. You can set the download destination to a URL or directly upload the downloaded backup set to your Object Storage Service (OSS) bucket to facilitate data analysis and offline archiving. * [Download the backup files of an ApsaraDB RDS for MySQL instance](~~98819~~) * [Download the backup files of an ApsaraDB RDS for PostgreSQL instance](~~96774~~) * [Download the backup files of a PolarDB for MySQL cluster](~~2627635~~) @param request: CreateDownloadRequest @param runtime: runtime options for this request RuntimeOptions @return: CreateDownloadResponse """ UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.bak_set_id): query['BakSetId'] = request.bak_set_id if not UtilClient.is_unset(request.bak_set_size): query['BakSetSize'] = request.bak_set_size if not UtilClient.is_unset(request.bak_set_type): query['BakSetType'] = request.bak_set_type if not UtilClient.is_unset(request.download_point_in_time): query['DownloadPointInTime'] = request.download_point_in_time if not UtilClient.is_unset(request.format_type): query['FormatType'] = request.format_type if not UtilClient.is_unset(request.instance_name): query['InstanceName'] = request.instance_name if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code if not UtilClient.is_unset(request.target_bucket): query['TargetBucket'] = request.target_bucket if not UtilClient.is_unset(request.target_oss_region): query['TargetOssRegion'] = request.target_oss_region if not UtilClient.is_unset(request.target_path): query['TargetPath'] = request.target_path if not UtilClient.is_unset(request.target_type): query['TargetType'] = request.target_type req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='CreateDownload', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.CreateDownloadResponse(), self.call_api(params, req, runtime) ) def create_download(self, request): """ ### [](#)Supported database engines * ApsaraDB RDS for MySQL * ApsaraDB RDS for PostgreSQL * PolarDB for MySQL ### [](#)References For the instances that meet your business requirements, you can create an advanced download task by point in time or backup set. You can set the download destination to a URL or directly upload the downloaded backup set to your Object Storage Service (OSS) bucket to facilitate data analysis and offline archiving. * [Download the backup files of an ApsaraDB RDS for MySQL instance](~~98819~~) * [Download the backup files of an ApsaraDB RDS for PostgreSQL instance](~~96774~~) * [Download the backup files of a PolarDB for MySQL cluster](~~2627635~~) @param request: CreateDownloadRequest @return: CreateDownloadResponse """ runtime = util_models.RuntimeOptions() return self.create_download_with_options(request, runtime) def delete_sandbox_instance_with_options(self, request, runtime): """ This operation is available only for the Database Backup (DBS) API of the 2021-01-01 version. @param request: DeleteSandboxInstanceRequest @param runtime: runtime options for this request RuntimeOptions @return: DeleteSandboxInstanceResponse """ UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.backup_plan_id): query['BackupPlanId'] = request.backup_plan_id if not UtilClient.is_unset(request.instance_id): query['InstanceId'] = request.instance_id if not UtilClient.is_unset(request.zone_id): query['ZoneId'] = request.zone_id req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DeleteSandboxInstance', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DeleteSandboxInstanceResponse(), self.call_api(params, req, runtime) ) def delete_sandbox_instance(self, request): """ This operation is available only for the Database Backup (DBS) API of the 2021-01-01 version. @param request: DeleteSandboxInstanceRequest @return: DeleteSandboxInstanceResponse """ runtime = util_models.RuntimeOptions() return self.delete_sandbox_instance_with_options(request, runtime) def describe_backup_data_list_with_options(self, request, runtime): UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.backup_id): query['BackupId'] = request.backup_id if not UtilClient.is_unset(request.backup_method): query['BackupMethod'] = request.backup_method if not UtilClient.is_unset(request.backup_mode): query['BackupMode'] = request.backup_mode if not UtilClient.is_unset(request.backup_scale): query['BackupScale'] = request.backup_scale if not UtilClient.is_unset(request.backup_status): query['BackupStatus'] = request.backup_status if not UtilClient.is_unset(request.backup_type): query['BackupType'] = request.backup_type if not UtilClient.is_unset(request.data_source_id): query['DataSourceId'] = request.data_source_id if not UtilClient.is_unset(request.end_time): query['EndTime'] = request.end_time if not UtilClient.is_unset(request.instance_is_deleted): query['InstanceIsDeleted'] = request.instance_is_deleted if not UtilClient.is_unset(request.instance_name): query['InstanceName'] = request.instance_name if not UtilClient.is_unset(request.instance_region): query['InstanceRegion'] = request.instance_region if not UtilClient.is_unset(request.page_number): query['PageNumber'] = request.page_number if not UtilClient.is_unset(request.page_size): query['PageSize'] = request.page_size if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code if not UtilClient.is_unset(request.scene_type): query['SceneType'] = request.scene_type if not UtilClient.is_unset(request.start_time): query['StartTime'] = request.start_time req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeBackupDataList', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeBackupDataListResponse(), self.call_api(params, req, runtime) ) def describe_backup_data_list(self, request): runtime = util_models.RuntimeOptions() return self.describe_backup_data_list_with_options(request, runtime) def describe_backup_policy_with_options(self, request, runtime): UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.instance_name): query['InstanceName'] = request.instance_name if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeBackupPolicy', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeBackupPolicyResponse(), self.call_api(params, req, runtime) ) def describe_backup_policy(self, request): runtime = util_models.RuntimeOptions() return self.describe_backup_policy_with_options(request, runtime) def describe_dbtables_recovery_backup_set_with_options(self, request, runtime): UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.instance_id): query['InstanceId'] = request.instance_id if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeDBTablesRecoveryBackupSet', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeDBTablesRecoveryBackupSetResponse(), self.call_api(params, req, runtime) ) def describe_dbtables_recovery_backup_set(self, request): runtime = util_models.RuntimeOptions() return self.describe_dbtables_recovery_backup_set_with_options(request, runtime) def describe_dbtables_recovery_state_with_options(self, request, runtime): UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.instance_id): query['InstanceId'] = request.instance_id if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeDBTablesRecoveryState', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeDBTablesRecoveryStateResponse(), self.call_api(params, req, runtime) ) def describe_dbtables_recovery_state(self, request): runtime = util_models.RuntimeOptions() return self.describe_dbtables_recovery_state_with_options(request, runtime) def describe_dbtables_recovery_time_range_with_options(self, request, runtime): UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.instance_id): query['InstanceId'] = request.instance_id if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeDBTablesRecoveryTimeRange', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeDBTablesRecoveryTimeRangeResponse(), self.call_api(params, req, runtime) ) def describe_dbtables_recovery_time_range(self, request): runtime = util_models.RuntimeOptions() return self.describe_dbtables_recovery_time_range_with_options(request, runtime) def describe_download_backup_set_storage_info_with_options(self, request, runtime): """ ### [](#)Supported database engines * ApsaraDB RDS for MySQL * ApsaraDB RDS for PostgreSQL * PolarDB for MySQL ### [](#)References * [Download the backup files of an ApsaraDB RDS for MySQL instance](~~98819~~) * [Download the backup files of an ApsaraDB RDS for PostgreSQL instance](~~96774~~) * [Download the backup files of a PolarDB for MySQL cluster](~~2627635~~) @param request: DescribeDownloadBackupSetStorageInfoRequest @param runtime: runtime options for this request RuntimeOptions @return: DescribeDownloadBackupSetStorageInfoResponse """ UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.backup_set_id): query['BackupSetId'] = request.backup_set_id if not UtilClient.is_unset(request.duration): query['Duration'] = request.duration if not UtilClient.is_unset(request.instance_name): query['InstanceName'] = request.instance_name if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code if not UtilClient.is_unset(request.task_id): query['TaskId'] = request.task_id req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeDownloadBackupSetStorageInfo', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeDownloadBackupSetStorageInfoResponse(), self.call_api(params, req, runtime) ) def describe_download_backup_set_storage_info(self, request): """ ### [](#)Supported database engines * ApsaraDB RDS for MySQL * ApsaraDB RDS for PostgreSQL * PolarDB for MySQL ### [](#)References * [Download the backup files of an ApsaraDB RDS for MySQL instance](~~98819~~) * [Download the backup files of an ApsaraDB RDS for PostgreSQL instance](~~96774~~) * [Download the backup files of a PolarDB for MySQL cluster](~~2627635~~) @param request: DescribeDownloadBackupSetStorageInfoRequest @return: DescribeDownloadBackupSetStorageInfoResponse """ runtime = util_models.RuntimeOptions() return self.describe_download_backup_set_storage_info_with_options(request, runtime) def describe_download_support_with_options(self, request, runtime): """ ### [](#)Supported database engines * ApsaraDB RDS for MySQL * ApsaraDB RDS for PostgreSQL * PolarDB for MySQL ### [](#)References You can create an advanced download task by point in time or backup set. You can set the download destination to a URL or directly upload the downloaded backup set to your Object Storage Service (OSS) bucket to facilitate data analysis and offline archiving. * [Download the backup files of an ApsaraDB RDS for MySQL instance](~~98819~~) * [Download the backup files of an ApsaraDB RDS for PostgreSQL instance](~~96774~~) * [Download the backup files of a PolarDB for MySQL cluster](~~2627635~~) @param request: DescribeDownloadSupportRequest @param runtime: runtime options for this request RuntimeOptions @return: DescribeDownloadSupportResponse """ UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.instance_name): query['InstanceName'] = request.instance_name if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeDownloadSupport', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeDownloadSupportResponse(), self.call_api(params, req, runtime) ) def describe_download_support(self, request): """ ### [](#)Supported database engines * ApsaraDB RDS for MySQL * ApsaraDB RDS for PostgreSQL * PolarDB for MySQL ### [](#)References You can create an advanced download task by point in time or backup set. You can set the download destination to a URL or directly upload the downloaded backup set to your Object Storage Service (OSS) bucket to facilitate data analysis and offline archiving. * [Download the backup files of an ApsaraDB RDS for MySQL instance](~~98819~~) * [Download the backup files of an ApsaraDB RDS for PostgreSQL instance](~~96774~~) * [Download the backup files of a PolarDB for MySQL cluster](~~2627635~~) @param request: DescribeDownloadSupportRequest @return: DescribeDownloadSupportResponse """ runtime = util_models.RuntimeOptions() return self.describe_download_support_with_options(request, runtime) def describe_download_task_with_options(self, request, runtime): """ ### [](#)Supported database engines * ApsaraDB RDS for MySQL * ApsaraDB RDS for PostgreSQL * PolarDB for MySQL ### [](#)References * [Download the backup files of an ApsaraDB RDS for MySQL instance](~~98819~~) * [Download the backup files of an ApsaraDB RDS for PostgreSQL instance](~~96774~~) * [Download the backup files of a PolarDB for MySQL cluster](~~2627635~~) @param request: DescribeDownloadTaskRequest @param runtime: runtime options for this request RuntimeOptions @return: DescribeDownloadTaskResponse """ UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.backup_set_id): query['BackupSetId'] = request.backup_set_id if not UtilClient.is_unset(request.current_page): query['CurrentPage'] = request.current_page if not UtilClient.is_unset(request.datasource_id): query['DatasourceId'] = request.datasource_id if not UtilClient.is_unset(request.end_time): query['EndTime'] = request.end_time if not UtilClient.is_unset(request.instance_name): query['InstanceName'] = request.instance_name if not UtilClient.is_unset(request.order_column): query['OrderColumn'] = request.order_column if not UtilClient.is_unset(request.order_direct): query['OrderDirect'] = request.order_direct if not UtilClient.is_unset(request.page_size): query['PageSize'] = request.page_size if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code if not UtilClient.is_unset(request.start_time): query['StartTime'] = request.start_time if not UtilClient.is_unset(request.state): query['State'] = request.state if not UtilClient.is_unset(request.task_type): query['TaskType'] = request.task_type req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeDownloadTask', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeDownloadTaskResponse(), self.call_api(params, req, runtime) ) def describe_download_task(self, request): """ ### [](#)Supported database engines * ApsaraDB RDS for MySQL * ApsaraDB RDS for PostgreSQL * PolarDB for MySQL ### [](#)References * [Download the backup files of an ApsaraDB RDS for MySQL instance](~~98819~~) * [Download the backup files of an ApsaraDB RDS for PostgreSQL instance](~~96774~~) * [Download the backup files of a PolarDB for MySQL cluster](~~2627635~~) @param request: DescribeDownloadTaskRequest @return: DescribeDownloadTaskResponse """ runtime = util_models.RuntimeOptions() return self.describe_download_task_with_options(request, runtime) def describe_sandbox_backup_sets_with_options(self, request, runtime): """ Before you call this operation, you must enable the sandbox feature for the database instance. For more information, see [Use the emergency recovery feature of an ApsaraDB RDS for MySQL instance](~~203154~~) or [Create a sandbox instance for emergency disaster recovery of a self-managed MySQL database](~~185577~~). This operation is available only for the Database Backup (DBS) API of the 2021-01-01 version. @param request: DescribeSandboxBackupSetsRequest @param runtime: runtime options for this request RuntimeOptions @return: DescribeSandboxBackupSetsResponse """ UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.backup_plan_id): query['BackupPlanId'] = request.backup_plan_id if not UtilClient.is_unset(request.backup_set_id): query['BackupSetId'] = request.backup_set_id if not UtilClient.is_unset(request.page_number): query['PageNumber'] = request.page_number if not UtilClient.is_unset(request.page_size): query['PageSize'] = request.page_size req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeSandboxBackupSets', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeSandboxBackupSetsResponse(), self.call_api(params, req, runtime) ) def describe_sandbox_backup_sets(self, request): """ Before you call this operation, you must enable the sandbox feature for the database instance. For more information, see [Use the emergency recovery feature of an ApsaraDB RDS for MySQL instance](~~203154~~) or [Create a sandbox instance for emergency disaster recovery of a self-managed MySQL database](~~185577~~). This operation is available only for the Database Backup (DBS) API of the 2021-01-01 version. @param request: DescribeSandboxBackupSetsRequest @return: DescribeSandboxBackupSetsResponse """ runtime = util_models.RuntimeOptions() return self.describe_sandbox_backup_sets_with_options(request, runtime) def describe_sandbox_instances_with_options(self, request, runtime): """ This operation is available only in Database Backup (DBS) API of the 2021-01-01 version. @param request: DescribeSandboxInstancesRequest @param runtime: runtime options for this request RuntimeOptions @return: DescribeSandboxInstancesResponse """ UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.backup_plan_id): query['BackupPlanId'] = request.backup_plan_id if not UtilClient.is_unset(request.instance_id): query['InstanceId'] = request.instance_id if not UtilClient.is_unset(request.page_number): query['PageNumber'] = request.page_number if not UtilClient.is_unset(request.page_size): query['PageSize'] = request.page_size req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeSandboxInstances', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeSandboxInstancesResponse(), self.call_api(params, req, runtime) ) def describe_sandbox_instances(self, request): """ This operation is available only in Database Backup (DBS) API of the 2021-01-01 version. @param request: DescribeSandboxInstancesRequest @return: DescribeSandboxInstancesResponse """ runtime = util_models.RuntimeOptions() return self.describe_sandbox_instances_with_options(request, runtime) def describe_sandbox_recovery_time_with_options(self, request, runtime): """ Before you call this operation, you must enable the sandbox feature for the database instance. For more information, see [Use the emergency recovery feature of an ApsaraDB RDS for MySQL instance](~~203154~~) or [Create a sandbox instance for emergency disaster recovery of a self-managed MySQL database](~~185577~~). This operation is available only in Database Backup (DBS) API of the 2021-01-01 version. @param request: DescribeSandboxRecoveryTimeRequest @param runtime: runtime options for this request RuntimeOptions @return: DescribeSandboxRecoveryTimeResponse """ UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.backup_plan_id): query['BackupPlanId'] = request.backup_plan_id req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='DescribeSandboxRecoveryTime', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.DescribeSandboxRecoveryTimeResponse(), self.call_api(params, req, runtime) ) def describe_sandbox_recovery_time(self, request): """ Before you call this operation, you must enable the sandbox feature for the database instance. For more information, see [Use the emergency recovery feature of an ApsaraDB RDS for MySQL instance](~~203154~~) or [Create a sandbox instance for emergency disaster recovery of a self-managed MySQL database](~~185577~~). This operation is available only in Database Backup (DBS) API of the 2021-01-01 version. @param request: DescribeSandboxRecoveryTimeRequest @return: DescribeSandboxRecoveryTimeResponse """ runtime = util_models.RuntimeOptions() return self.describe_sandbox_recovery_time_with_options(request, runtime) def modify_dbtables_recovery_state_with_options(self, request, runtime): UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.category): query['Category'] = request.category if not UtilClient.is_unset(request.instance_id): query['InstanceId'] = request.instance_id if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code if not UtilClient.is_unset(request.retention): query['Retention'] = request.retention req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='ModifyDBTablesRecoveryState', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.ModifyDBTablesRecoveryStateResponse(), self.call_api(params, req, runtime) ) def modify_dbtables_recovery_state(self, request): runtime = util_models.RuntimeOptions() return self.modify_dbtables_recovery_state_with_options(request, runtime) def support_dbtable_recovery_with_options(self, request, runtime): UtilClient.validate_model(request) query = {} if not UtilClient.is_unset(request.instance_id): query['InstanceId'] = request.instance_id if not UtilClient.is_unset(request.region_code): query['RegionCode'] = request.region_code req = open_api_models.OpenApiRequest( query=OpenApiUtilClient.query(query) ) params = open_api_models.Params( action='SupportDBTableRecovery', version='2021-01-01', protocol='HTTPS', pathname='/', method='POST', auth_type='AK', style='RPC', req_body_type='formData', body_type='json' ) return TeaCore.from_map( dbs_20210101_models.SupportDBTableRecoveryResponse(), self.call_api(params, req, runtime) ) def support_dbtable_recovery(self, request): runtime = util_models.RuntimeOptions() return self.support_dbtable_recovery_with_options(request, runtime)