tencentcloud-sdk-dbs 3.0.1182

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: d5457829884ae782bc657c84fba8f9709a57774e
4
+ data.tar.gz: 697cbb1a9b6406f2ff61ea25cba7a1b7e84a42b8
5
+ SHA512:
6
+ metadata.gz: 3c0d55d527be56765583a786cc52c3ef612e93a3b3302b2eda2b99b505f543f1de0a0a40da85412a5fbe63b6cd90be8d46c93e0f3c89541e1de27e644490bf58
7
+ data.tar.gz: 34f998b3bd7e24fedf6390ba9332e8d5fb0ca307fd5cc344f8afd36fe7dfb48975ff1b68a11e4d37e3d4c679234fc02029471248420725adf0f680bb5f912204
data/lib/VERSION ADDED
@@ -0,0 +1 @@
1
+ 3.0.1182
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'tencentcloud-sdk-common'
4
+
5
+ require_relative 'v20211108/client'
6
+ require_relative 'v20211108/models'
7
+
8
+ module TencentCloud
9
+ module Dbs
10
+ end
11
+ end
@@ -0,0 +1,156 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2025 Tencent. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ require 'json'
18
+
19
+ module TencentCloud
20
+ module Dbs
21
+ module V20211108
22
+ class Client < TencentCloud::Common::AbstractClient
23
+
24
+ def initialize(credential, region, profile = nil)
25
+ api_version = '2021-11-08'
26
+ api_endpoint = 'dbs.tencentcloudapi.com'
27
+ sdk_version = 'DBS_' + File.read(File.expand_path('../VERSION', __dir__)).strip
28
+ super(credential, region, api_version, api_endpoint, sdk_version, profile)
29
+ end
30
+
31
+
32
+ # 本接口(ConfigureBackupPlan)用于配置备份计划。包括配置备份源实例信息、备份对象以及备份策略等。
33
+
34
+ # @param request: Request instance for ConfigureBackupPlan.
35
+ # @type request: :class:`Tencentcloud::dbs::V20211108::ConfigureBackupPlanRequest`
36
+ # @rtype: :class:`Tencentcloud::dbs::V20211108::ConfigureBackupPlanResponse`
37
+ def ConfigureBackupPlan(request)
38
+ body = send_request('ConfigureBackupPlan', request.serialize)
39
+ response = JSON.parse(body)
40
+ if response['Response'].key?('Error') == false
41
+ model = ConfigureBackupPlanResponse.new
42
+ model.deserialize(response['Response'])
43
+ model
44
+ else
45
+ code = response['Response']['Error']['Code']
46
+ message = response['Response']['Error']['Message']
47
+ reqid = response['Response']['RequestId']
48
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
49
+ end
50
+ rescue TencentCloud::Common::TencentCloudSDKException => e
51
+ raise e
52
+ rescue StandardError => e
53
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
54
+ end
55
+
56
+ # 该接口用于创建连通性检测任务,请在创建备份计划前,通过该接口来检测你的源端实例是否连通性正常。
57
+
58
+ # @param request: Request instance for CreateConnectTestJob.
59
+ # @type request: :class:`Tencentcloud::dbs::V20211108::CreateConnectTestJobRequest`
60
+ # @rtype: :class:`Tencentcloud::dbs::V20211108::CreateConnectTestJobResponse`
61
+ def CreateConnectTestJob(request)
62
+ body = send_request('CreateConnectTestJob', request.serialize)
63
+ response = JSON.parse(body)
64
+ if response['Response'].key?('Error') == false
65
+ model = CreateConnectTestJobResponse.new
66
+ model.deserialize(response['Response'])
67
+ model
68
+ else
69
+ code = response['Response']['Error']['Code']
70
+ message = response['Response']['Error']['Message']
71
+ reqid = response['Response']['RequestId']
72
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
73
+ end
74
+ rescue TencentCloud::Common::TencentCloudSDKException => e
75
+ raise e
76
+ rescue StandardError => e
77
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
78
+ end
79
+
80
+ # 本接口(DescribeBackupCheckJob)用于查询备份计划预校验任务的结果。仅对于预校验通过的任务,才能启动备份计划。
81
+
82
+ # @param request: Request instance for DescribeBackupCheckJob.
83
+ # @type request: :class:`Tencentcloud::dbs::V20211108::DescribeBackupCheckJobRequest`
84
+ # @rtype: :class:`Tencentcloud::dbs::V20211108::DescribeBackupCheckJobResponse`
85
+ def DescribeBackupCheckJob(request)
86
+ body = send_request('DescribeBackupCheckJob', request.serialize)
87
+ response = JSON.parse(body)
88
+ if response['Response'].key?('Error') == false
89
+ model = DescribeBackupCheckJobResponse.new
90
+ model.deserialize(response['Response'])
91
+ model
92
+ else
93
+ code = response['Response']['Error']['Code']
94
+ message = response['Response']['Error']['Message']
95
+ reqid = response['Response']['RequestId']
96
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
97
+ end
98
+ rescue TencentCloud::Common::TencentCloudSDKException => e
99
+ raise e
100
+ rescue StandardError => e
101
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
102
+ end
103
+
104
+ # 本接口(StartBackupCheckJob)用于创建备份计划预校验任务。
105
+
106
+ # @param request: Request instance for StartBackupCheckJob.
107
+ # @type request: :class:`Tencentcloud::dbs::V20211108::StartBackupCheckJobRequest`
108
+ # @rtype: :class:`Tencentcloud::dbs::V20211108::StartBackupCheckJobResponse`
109
+ def StartBackupCheckJob(request)
110
+ body = send_request('StartBackupCheckJob', request.serialize)
111
+ response = JSON.parse(body)
112
+ if response['Response'].key?('Error') == false
113
+ model = StartBackupCheckJobResponse.new
114
+ model.deserialize(response['Response'])
115
+ model
116
+ else
117
+ code = response['Response']['Error']['Code']
118
+ message = response['Response']['Error']['Message']
119
+ reqid = response['Response']['RequestId']
120
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
121
+ end
122
+ rescue TencentCloud::Common::TencentCloudSDKException => e
123
+ raise e
124
+ rescue StandardError => e
125
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
126
+ end
127
+
128
+ # 本接口(StartBackupPlan)用于启动备份计划。调用此接口前,请务必先使用 StartBackupCheckJob 创建备份计划预校验任务,并通过 DescribeBackupCheckJob 接口查询到任务状态为校验通过时,才能启动备份计划。
129
+
130
+ # @param request: Request instance for StartBackupPlan.
131
+ # @type request: :class:`Tencentcloud::dbs::V20211108::StartBackupPlanRequest`
132
+ # @rtype: :class:`Tencentcloud::dbs::V20211108::StartBackupPlanResponse`
133
+ def StartBackupPlan(request)
134
+ body = send_request('StartBackupPlan', request.serialize)
135
+ response = JSON.parse(body)
136
+ if response['Response'].key?('Error') == false
137
+ model = StartBackupPlanResponse.new
138
+ model.deserialize(response['Response'])
139
+ model
140
+ else
141
+ code = response['Response']['Error']['Code']
142
+ message = response['Response']['Error']['Message']
143
+ reqid = response['Response']['RequestId']
144
+ raise TencentCloud::Common::TencentCloudSDKException.new(code, message, reqid)
145
+ end
146
+ rescue TencentCloud::Common::TencentCloudSDKException => e
147
+ raise e
148
+ rescue StandardError => e
149
+ raise TencentCloud::Common::TencentCloudSDKException.new(nil, e.inspect)
150
+ end
151
+
152
+
153
+ end
154
+ end
155
+ end
156
+ end
@@ -0,0 +1,547 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright (c) 2017-2025 Tencent. All Rights Reserved.
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # http://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ module TencentCloud
18
+ module Dbs
19
+ module V20211108
20
+ # 备份列对象
21
+ class BackupColumnItem < TencentCloud::Common::AbstractModel
22
+ # @param ColumnName: 列名。
23
+ # @type ColumnName: String
24
+ # @param NewColumnName: 重命名后的列名。
25
+ # @type NewColumnName: String
26
+
27
+ attr_accessor :ColumnName, :NewColumnName
28
+
29
+ def initialize(columnname=nil, newcolumnname=nil)
30
+ @ColumnName = columnname
31
+ @NewColumnName = newcolumnname
32
+ end
33
+
34
+ def deserialize(params)
35
+ @ColumnName = params['ColumnName']
36
+ @NewColumnName = params['NewColumnName']
37
+ end
38
+ end
39
+
40
+ # 备份源实例详情
41
+ class BackupEndpoint < TencentCloud::Common::AbstractModel
42
+ # @param DatabaseType: 数据库类型。目前支持的值["mysql", "mariadb", "percona"]。注意,该值必须和备份计划的类型一致。
43
+ # @type DatabaseType: String
44
+ # @param AccessType: 实例接入类型,支持的值包括:
45
+ # "extranet" - 外网;
46
+ # "cvm" - cvm自建实例;
47
+ # "dcg" - 专线接入;
48
+ # "vpncloud" - 云vpn接入;
49
+ # "cdb" - 腾讯云数据库实例;
50
+ # "ccn" - 云联网接入。
51
+ # @type AccessType: String
52
+ # @param UserName: 用户名。
53
+ # @type UserName: String
54
+ # @param Password: 登录密码。
55
+ # @type Password: String
56
+ # @param Region: 接入地域。
57
+ # @type Region: String
58
+ # @param Supplier: 服务提供商,支持的值包括["aliyun", "aws", "others"]。
59
+ # @type Supplier: String
60
+ # @param Ip: 实例 Ip。
61
+ # @type Ip: String
62
+ # @param Port: 实例端口号。
63
+ # @type Port: Integer
64
+ # @param InstanceId: 云数据库实例ID,格式如:cdb-qcloudtest。
65
+ # @type InstanceId: String
66
+ # @param CvmInstanceId: CVM 实例ID,格式如:ins-olgl39y8,与云服务器控制台页面显示的实例ID相同。如果是CVM自建实例,需要填写该字段。
67
+ # @type CvmInstanceId: String
68
+ # @param UniqDcgId: 专线网关ID,格式如:dcg-0rxtqqxb。
69
+ # @type UniqDcgId: String
70
+ # @param UniqVpnGwId: VPN网关ID,格式如:vpngw-9ghexg7q。
71
+ # @type UniqVpnGwId: String
72
+ # @param VpcId: 私有网络ID,格式如:vpc-92jblxto。
73
+ # @type VpcId: String
74
+ # @param SubnetId: 子网ID,格式如:subnet-3paxmkdz。
75
+ # @type SubnetId: String
76
+ # @param CcnId: 云联网ID,如:ccn-afp6kltc。
77
+ # @type CcnId: String
78
+ # @param EngineVersion: 数据库版本,当实例为 RDS 或 AWS 实例时才有效,格式如:5.6或者5.7,默认为5.6。
79
+ # @type EngineVersion: String
80
+ # @param DBKernel: mariadb三引擎版本。
81
+ # @type DBKernel: String
82
+
83
+ attr_accessor :DatabaseType, :AccessType, :UserName, :Password, :Region, :Supplier, :Ip, :Port, :InstanceId, :CvmInstanceId, :UniqDcgId, :UniqVpnGwId, :VpcId, :SubnetId, :CcnId, :EngineVersion, :DBKernel
84
+
85
+ def initialize(databasetype=nil, accesstype=nil, username=nil, password=nil, region=nil, supplier=nil, ip=nil, port=nil, instanceid=nil, cvminstanceid=nil, uniqdcgid=nil, uniqvpngwid=nil, vpcid=nil, subnetid=nil, ccnid=nil, engineversion=nil, dbkernel=nil)
86
+ @DatabaseType = databasetype
87
+ @AccessType = accesstype
88
+ @UserName = username
89
+ @Password = password
90
+ @Region = region
91
+ @Supplier = supplier
92
+ @Ip = ip
93
+ @Port = port
94
+ @InstanceId = instanceid
95
+ @CvmInstanceId = cvminstanceid
96
+ @UniqDcgId = uniqdcgid
97
+ @UniqVpnGwId = uniqvpngwid
98
+ @VpcId = vpcid
99
+ @SubnetId = subnetid
100
+ @CcnId = ccnid
101
+ @EngineVersion = engineversion
102
+ @DBKernel = dbkernel
103
+ end
104
+
105
+ def deserialize(params)
106
+ @DatabaseType = params['DatabaseType']
107
+ @AccessType = params['AccessType']
108
+ @UserName = params['UserName']
109
+ @Password = params['Password']
110
+ @Region = params['Region']
111
+ @Supplier = params['Supplier']
112
+ @Ip = params['Ip']
113
+ @Port = params['Port']
114
+ @InstanceId = params['InstanceId']
115
+ @CvmInstanceId = params['CvmInstanceId']
116
+ @UniqDcgId = params['UniqDcgId']
117
+ @UniqVpnGwId = params['UniqVpnGwId']
118
+ @VpcId = params['VpcId']
119
+ @SubnetId = params['SubnetId']
120
+ @CcnId = params['CcnId']
121
+ @EngineVersion = params['EngineVersion']
122
+ @DBKernel = params['DBKernel']
123
+ end
124
+ end
125
+
126
+ # 备份对象
127
+ class BackupObject < TencentCloud::Common::AbstractModel
128
+ # @param ObjectMode: 备份对象类型,可能的取值为:
129
+ # "all" - 整实例;
130
+ # "partial" - 部分对象。
131
+ # @type ObjectMode: String
132
+ # @param ObjectItems: 备份对象详情,当 ObjectMode 为 partial, 即选择部分对象备份时,该字段不能为空。
133
+ # 注意:此字段可能返回 null,表示取不到有效值。
134
+ # @type ObjectItems: Array
135
+
136
+ attr_accessor :ObjectMode, :ObjectItems
137
+
138
+ def initialize(objectmode=nil, objectitems=nil)
139
+ @ObjectMode = objectmode
140
+ @ObjectItems = objectitems
141
+ end
142
+
143
+ def deserialize(params)
144
+ @ObjectMode = params['ObjectMode']
145
+ unless params['ObjectItems'].nil?
146
+ @ObjectItems = []
147
+ params['ObjectItems'].each do |i|
148
+ backupobjectitem_tmp = BackupObjectItem.new
149
+ backupobjectitem_tmp.deserialize(i)
150
+ @ObjectItems << backupobjectitem_tmp
151
+ end
152
+ end
153
+ end
154
+ end
155
+
156
+ # 备份对象详情
157
+ class BackupObjectItem < TencentCloud::Common::AbstractModel
158
+ # @param DBName: 库名。
159
+ # @type DBName: String
160
+ # @param NewDBName: 重命名后的库名。
161
+ # @type NewDBName: String
162
+ # @param SchemaName: schema 名。
163
+ # @type SchemaName: String
164
+ # @param NewSchemaName: 重命名后的 schema 名。
165
+ # @type NewSchemaName: String
166
+ # @param DbMode: 库选择模式,可能的取值为:
167
+ # "all" - 当前对象下的所有对象;
168
+ # "partial" - 当前对象下的部分对象。
169
+ # @type DbMode: String
170
+ # @param TableMode: 表选择模式,可能的取值为:
171
+ # "all" - 当前对象下的所有对象;
172
+ # "partial" - 当前对象下的部分对象。
173
+ # @type TableMode: String
174
+ # @param Tables: 表对象详情。当 TableMode 为 partial,即选择部分表备份时,此参数需要填写。
175
+ # 注意:此字段可能返回 null,表示取不到有效值。
176
+ # @type Tables: Array
177
+
178
+ attr_accessor :DBName, :NewDBName, :SchemaName, :NewSchemaName, :DbMode, :TableMode, :Tables
179
+
180
+ def initialize(dbname=nil, newdbname=nil, schemaname=nil, newschemaname=nil, dbmode=nil, tablemode=nil, tables=nil)
181
+ @DBName = dbname
182
+ @NewDBName = newdbname
183
+ @SchemaName = schemaname
184
+ @NewSchemaName = newschemaname
185
+ @DbMode = dbmode
186
+ @TableMode = tablemode
187
+ @Tables = tables
188
+ end
189
+
190
+ def deserialize(params)
191
+ @DBName = params['DBName']
192
+ @NewDBName = params['NewDBName']
193
+ @SchemaName = params['SchemaName']
194
+ @NewSchemaName = params['NewSchemaName']
195
+ @DbMode = params['DbMode']
196
+ @TableMode = params['TableMode']
197
+ unless params['Tables'].nil?
198
+ @Tables = []
199
+ params['Tables'].each do |i|
200
+ backuptableitem_tmp = BackupTableItem.new
201
+ backuptableitem_tmp.deserialize(i)
202
+ @Tables << backuptableitem_tmp
203
+ end
204
+ end
205
+ end
206
+ end
207
+
208
+ # 备份周期描述
209
+ class BackupPeriod < TencentCloud::Common::AbstractModel
210
+ # @param PeriodType: 全量备份频率。目前仅支持"Weekly" - 每星期
211
+ # @type PeriodType: String
212
+ # @param Day: 全量备份周期。取值范围为:["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"]。
213
+ # @type Day: Array
214
+
215
+ attr_accessor :PeriodType, :Day
216
+
217
+ def initialize(periodtype=nil, day=nil)
218
+ @PeriodType = periodtype
219
+ @Day = day
220
+ end
221
+
222
+ def deserialize(params)
223
+ @PeriodType = params['PeriodType']
224
+ @Day = params['Day']
225
+ end
226
+ end
227
+
228
+ # 备份策略
229
+ class BackupStrategy < TencentCloud::Common::AbstractModel
230
+ # @param BackupStartTime: 全量备份开始时间。周期性的全量备份将在当天该时间开始。
231
+ # @type BackupStartTime: String
232
+ # @param StorageStrategy: 存储策略。
233
+ # @type StorageStrategy: :class:`Tencentcloud::Dbs.v20211108.models.StorageStrategy`
234
+ # @param BackupPeriod: 备份周期。
235
+ # @type BackupPeriod: :class:`Tencentcloud::Dbs.v20211108.models.BackupPeriod`
236
+ # @param BackupMethod: 备份方法。目前仅支持 "logical" - 逻辑备份。
237
+ # @type BackupMethod: String
238
+ # @param StrategyType: 备份周期。支持的值包括:
239
+ # "period" - 周期性备份;
240
+ # "single" - 单次备份。
241
+ # 默认值为"period"。
242
+ # @type StrategyType: String
243
+ # @param EnableIncrement: 是否开启增量备份。可能的取值为["true", "false"]。默认值为"true"。
244
+ # @type EnableIncrement: Boolean
245
+
246
+ attr_accessor :BackupStartTime, :StorageStrategy, :BackupPeriod, :BackupMethod, :StrategyType, :EnableIncrement
247
+
248
+ def initialize(backupstarttime=nil, storagestrategy=nil, backupperiod=nil, backupmethod=nil, strategytype=nil, enableincrement=nil)
249
+ @BackupStartTime = backupstarttime
250
+ @StorageStrategy = storagestrategy
251
+ @BackupPeriod = backupperiod
252
+ @BackupMethod = backupmethod
253
+ @StrategyType = strategytype
254
+ @EnableIncrement = enableincrement
255
+ end
256
+
257
+ def deserialize(params)
258
+ @BackupStartTime = params['BackupStartTime']
259
+ unless params['StorageStrategy'].nil?
260
+ @StorageStrategy = StorageStrategy.new
261
+ @StorageStrategy.deserialize(params['StorageStrategy'])
262
+ end
263
+ unless params['BackupPeriod'].nil?
264
+ @BackupPeriod = BackupPeriod.new
265
+ @BackupPeriod.deserialize(params['BackupPeriod'])
266
+ end
267
+ @BackupMethod = params['BackupMethod']
268
+ @StrategyType = params['StrategyType']
269
+ @EnableIncrement = params['EnableIncrement']
270
+ end
271
+ end
272
+
273
+ # 备份表对象
274
+ class BackupTableItem < TencentCloud::Common::AbstractModel
275
+ # @param TableName: 表名。
276
+ # @type TableName: String
277
+ # @param NewTableName: 重命名后的表名。
278
+ # @type NewTableName: String
279
+ # @param Columns: 列对象。
280
+ # 注意:此字段可能返回 null,表示取不到有效值。
281
+ # @type Columns: Array
282
+
283
+ attr_accessor :TableName, :NewTableName, :Columns
284
+
285
+ def initialize(tablename=nil, newtablename=nil, columns=nil)
286
+ @TableName = tablename
287
+ @NewTableName = newtablename
288
+ @Columns = columns
289
+ end
290
+
291
+ def deserialize(params)
292
+ @TableName = params['TableName']
293
+ @NewTableName = params['NewTableName']
294
+ unless params['Columns'].nil?
295
+ @Columns = []
296
+ params['Columns'].each do |i|
297
+ backupcolumnitem_tmp = BackupColumnItem.new
298
+ backupcolumnitem_tmp.deserialize(i)
299
+ @Columns << backupcolumnitem_tmp
300
+ end
301
+ end
302
+ end
303
+ end
304
+
305
+ # ConfigureBackupPlan请求参数结构体
306
+ class ConfigureBackupPlanRequest < TencentCloud::Common::AbstractModel
307
+ # @param BackupPlanId: 备份计划 ID。
308
+ # @type BackupPlanId: String
309
+ # @param BackupPlanName: 备份计划名称。支持数字、英文大小写字母、中文以及特殊字符_-./()()[]+=::@,且长度不能超过60。
310
+ # @type BackupPlanName: String
311
+ # @param SourceEndPoint: 备份源实例信息。
312
+ # @type SourceEndPoint: :class:`Tencentcloud::Dbs.v20211108.models.BackupEndpoint`
313
+ # @param BackupObject: 备份对象信息。
314
+ # @type BackupObject: :class:`Tencentcloud::Dbs.v20211108.models.BackupObject`
315
+ # @param BackupStrategy: 备份策略。
316
+ # @type BackupStrategy: :class:`Tencentcloud::Dbs.v20211108.models.BackupStrategy`
317
+ # @param PlainText: 加密信息。当需要使用SSE-KMS需要传入该值,你可以通过 KMS 的 GenerateDataKey 接口生成。
318
+ # @type PlainText: String
319
+
320
+ attr_accessor :BackupPlanId, :BackupPlanName, :SourceEndPoint, :BackupObject, :BackupStrategy, :PlainText
321
+
322
+ def initialize(backupplanid=nil, backupplanname=nil, sourceendpoint=nil, backupobject=nil, backupstrategy=nil, plaintext=nil)
323
+ @BackupPlanId = backupplanid
324
+ @BackupPlanName = backupplanname
325
+ @SourceEndPoint = sourceendpoint
326
+ @BackupObject = backupobject
327
+ @BackupStrategy = backupstrategy
328
+ @PlainText = plaintext
329
+ end
330
+
331
+ def deserialize(params)
332
+ @BackupPlanId = params['BackupPlanId']
333
+ @BackupPlanName = params['BackupPlanName']
334
+ unless params['SourceEndPoint'].nil?
335
+ @SourceEndPoint = BackupEndpoint.new
336
+ @SourceEndPoint.deserialize(params['SourceEndPoint'])
337
+ end
338
+ unless params['BackupObject'].nil?
339
+ @BackupObject = BackupObject.new
340
+ @BackupObject.deserialize(params['BackupObject'])
341
+ end
342
+ unless params['BackupStrategy'].nil?
343
+ @BackupStrategy = BackupStrategy.new
344
+ @BackupStrategy.deserialize(params['BackupStrategy'])
345
+ end
346
+ @PlainText = params['PlainText']
347
+ end
348
+ end
349
+
350
+ # ConfigureBackupPlan返回参数结构体
351
+ class ConfigureBackupPlanResponse < TencentCloud::Common::AbstractModel
352
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
353
+ # @type RequestId: String
354
+
355
+ attr_accessor :RequestId
356
+
357
+ def initialize(requestid=nil)
358
+ @RequestId = requestid
359
+ end
360
+
361
+ def deserialize(params)
362
+ @RequestId = params['RequestId']
363
+ end
364
+ end
365
+
366
+ # CreateConnectTestJob请求参数结构体
367
+ class CreateConnectTestJobRequest < TencentCloud::Common::AbstractModel
368
+ # @param Endpoint: 备份源实例信息。
369
+ # @type Endpoint: :class:`Tencentcloud::Dbs.v20211108.models.BackupEndpoint`
370
+
371
+ attr_accessor :Endpoint
372
+
373
+ def initialize(endpoint=nil)
374
+ @Endpoint = endpoint
375
+ end
376
+
377
+ def deserialize(params)
378
+ unless params['Endpoint'].nil?
379
+ @Endpoint = BackupEndpoint.new
380
+ @Endpoint.deserialize(params['Endpoint'])
381
+ end
382
+ end
383
+ end
384
+
385
+ # CreateConnectTestJob返回参数结构体
386
+ class CreateConnectTestJobResponse < TencentCloud::Common::AbstractModel
387
+ # @param ConnTaskId: 连通性任务 ID。
388
+ # @type ConnTaskId: String
389
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
390
+ # @type RequestId: String
391
+
392
+ attr_accessor :ConnTaskId, :RequestId
393
+
394
+ def initialize(conntaskid=nil, requestid=nil)
395
+ @ConnTaskId = conntaskid
396
+ @RequestId = requestid
397
+ end
398
+
399
+ def deserialize(params)
400
+ @ConnTaskId = params['ConnTaskId']
401
+ @RequestId = params['RequestId']
402
+ end
403
+ end
404
+
405
+ # DescribeBackupCheckJob请求参数结构体
406
+ class DescribeBackupCheckJobRequest < TencentCloud::Common::AbstractModel
407
+ # @param BackupPlanId: 备份计划 ID。
408
+ # @type BackupPlanId: String
409
+
410
+ attr_accessor :BackupPlanId
411
+
412
+ def initialize(backupplanid=nil)
413
+ @BackupPlanId = backupplanid
414
+ end
415
+
416
+ def deserialize(params)
417
+ @BackupPlanId = params['BackupPlanId']
418
+ end
419
+ end
420
+
421
+ # DescribeBackupCheckJob返回参数结构体
422
+ class DescribeBackupCheckJobResponse < TencentCloud::Common::AbstractModel
423
+ # @param Status: 校验任务状态。可能的取值为:"finished" - 已完成; "running" - 进行中。
424
+ # @type Status: String
425
+ # @param Progress: 任务进度。取值范围为[0, 100],表示任务完成的百分比。例如:30表示任务完成30%。
426
+ # @type Progress: Integer
427
+ # @param CheckFlag: 校验是否通过标记。可能的取值为:"1" - 校验通过;"0" - 校验未通过。
428
+ # @type CheckFlag: Integer
429
+ # @param ErrMessage: 错误信息。
430
+ # @type ErrMessage: String
431
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
432
+ # @type RequestId: String
433
+
434
+ attr_accessor :Status, :Progress, :CheckFlag, :ErrMessage, :RequestId
435
+
436
+ def initialize(status=nil, progress=nil, checkflag=nil, errmessage=nil, requestid=nil)
437
+ @Status = status
438
+ @Progress = progress
439
+ @CheckFlag = checkflag
440
+ @ErrMessage = errmessage
441
+ @RequestId = requestid
442
+ end
443
+
444
+ def deserialize(params)
445
+ @Status = params['Status']
446
+ @Progress = params['Progress']
447
+ @CheckFlag = params['CheckFlag']
448
+ @ErrMessage = params['ErrMessage']
449
+ @RequestId = params['RequestId']
450
+ end
451
+ end
452
+
453
+ # StartBackupCheckJob请求参数结构体
454
+ class StartBackupCheckJobRequest < TencentCloud::Common::AbstractModel
455
+ # @param BackupPlanId: 备份计划 ID。
456
+ # @type BackupPlanId: String
457
+
458
+ attr_accessor :BackupPlanId
459
+
460
+ def initialize(backupplanid=nil)
461
+ @BackupPlanId = backupplanid
462
+ end
463
+
464
+ def deserialize(params)
465
+ @BackupPlanId = params['BackupPlanId']
466
+ end
467
+ end
468
+
469
+ # StartBackupCheckJob返回参数结构体
470
+ class StartBackupCheckJobResponse < TencentCloud::Common::AbstractModel
471
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
472
+ # @type RequestId: String
473
+
474
+ attr_accessor :RequestId
475
+
476
+ def initialize(requestid=nil)
477
+ @RequestId = requestid
478
+ end
479
+
480
+ def deserialize(params)
481
+ @RequestId = params['RequestId']
482
+ end
483
+ end
484
+
485
+ # StartBackupPlan请求参数结构体
486
+ class StartBackupPlanRequest < TencentCloud::Common::AbstractModel
487
+ # @param BackupPlanId: 备份计划 ID。
488
+ # @type BackupPlanId: String
489
+
490
+ attr_accessor :BackupPlanId
491
+
492
+ def initialize(backupplanid=nil)
493
+ @BackupPlanId = backupplanid
494
+ end
495
+
496
+ def deserialize(params)
497
+ @BackupPlanId = params['BackupPlanId']
498
+ end
499
+ end
500
+
501
+ # StartBackupPlan返回参数结构体
502
+ class StartBackupPlanResponse < TencentCloud::Common::AbstractModel
503
+ # @param RequestId: 唯一请求 ID,由服务端生成,每次请求都会返回(若请求因其他原因未能抵达服务端,则该次请求不会获得 RequestId)。定位问题时需要提供该次请求的 RequestId。
504
+ # @type RequestId: String
505
+
506
+ attr_accessor :RequestId
507
+
508
+ def initialize(requestid=nil)
509
+ @RequestId = requestid
510
+ end
511
+
512
+ def deserialize(params)
513
+ @RequestId = params['RequestId']
514
+ end
515
+ end
516
+
517
+ # 备份存储策略。
518
+ class StorageStrategy < TencentCloud::Common::AbstractModel
519
+ # @param StorageType: 存储类型。目前仅支持 "system" - DBS 内置存储。默认值为 "system"。
520
+ # @type StorageType: String
521
+ # @param Encryption: 加密方式。可能的取值为:
522
+ # "UnEncrypted" - 非加密存储;
523
+ # "SSE-COS" - 内置加密存储;
524
+ # 当该参数用作入参时,默认值为 "UnEncrypted"。
525
+ # @type Encryption: String
526
+ # @param BackupRetentionPeriod: 日志保留时间,单位为天。取值范围为[7, 3650],默认值为 30。
527
+ # @type BackupRetentionPeriod: Integer
528
+
529
+ attr_accessor :StorageType, :Encryption, :BackupRetentionPeriod
530
+
531
+ def initialize(storagetype=nil, encryption=nil, backupretentionperiod=nil)
532
+ @StorageType = storagetype
533
+ @Encryption = encryption
534
+ @BackupRetentionPeriod = backupretentionperiod
535
+ end
536
+
537
+ def deserialize(params)
538
+ @StorageType = params['StorageType']
539
+ @Encryption = params['Encryption']
540
+ @BackupRetentionPeriod = params['BackupRetentionPeriod']
541
+ end
542
+ end
543
+
544
+ end
545
+ end
546
+ end
547
+
metadata ADDED
@@ -0,0 +1,66 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: tencentcloud-sdk-dbs
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.0.1182
5
+ platform: ruby
6
+ authors:
7
+ - Tencent Cloud
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2025-12-13 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: tencentcloud-sdk-common
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ~>
18
+ - !ruby/object:Gem::Version
19
+ version: '3.0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ~>
25
+ - !ruby/object:Gem::Version
26
+ version: '3.0'
27
+ description: Tencent Cloud Ruby SDK is the official software development kit, which
28
+ allows Ruby developers to write software that makes use of Tencent Cloud service
29
+ DBS.
30
+ email:
31
+ - tencentcloudapi@tencent.com
32
+ executables: []
33
+ extensions: []
34
+ extra_rdoc_files: []
35
+ files:
36
+ - lib/v20211108/models.rb
37
+ - lib/v20211108/client.rb
38
+ - lib/tencentcloud-sdk-dbs.rb
39
+ - lib/VERSION
40
+ homepage: https://github.com/TencentCloud/tencentcloud-sdk-ruby
41
+ licenses:
42
+ - Apache-2.0
43
+ metadata:
44
+ source_code_uri: https://github.com/TencentCloud/tencentcloud-sdk-ruby/tencentcloud-sdk-dbs
45
+ changelog_uri: https://github.com/TencentCloud/tencentcloud-sdk-ruby/blob/master/CHANGELOG.md
46
+ post_install_message:
47
+ rdoc_options: []
48
+ require_paths:
49
+ - lib
50
+ required_ruby_version: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ required_rubygems_version: !ruby/object:Gem::Requirement
56
+ requirements:
57
+ - - '>='
58
+ - !ruby/object:Gem::Version
59
+ version: '0'
60
+ requirements: []
61
+ rubyforge_project:
62
+ rubygems_version: 2.0.14
63
+ signing_key:
64
+ specification_version: 4
65
+ summary: Tencent Cloud SDK for Ruby - DBS
66
+ test_files: []