-
Notifications
You must be signed in to change notification settings - Fork 96
/
cdb_client.js
1069 lines (1052 loc) · 42.8 KB
/
cdb_client.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.Client = void 0;
/* eslint-disable @typescript-eslint/no-unused-vars */
/*
* Copyright (c) 2018 THL A29 Limited, a Tencent company. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
const abstract_client_1 = require("../../../common/abstract_client");
/**
* cdb client
* @class
*/
class Client extends abstract_client_1.AbstractClient {
constructor(clientConfig) {
super("cdb.tencentcloudapi.com", "2017-03-20", clientConfig);
}
/**
* 本接口(DescribeDBInstanceGTID)用于查询云数据库实例是否开通了 GTID,不支持版本为 5.5 以及以下的实例。
*/
async DescribeDBInstanceGTID(req, cb) {
return this.request("DescribeDBInstanceGTID", req, cb);
}
/**
* 本接口(CreateRoInstanceIp)用于创建云数据库只读实例的独立VIP。
*/
async CreateRoInstanceIp(req, cb) {
return this.request("CreateRoInstanceIp", req, cb);
}
/**
* 本接口(CreateAuditPolicy)用于创建云数据库实例的审计策略,即将审计规则绑定到具体的云数据库实例上。
*/
async CreateAuditPolicy(req, cb) {
return this.request("CreateAuditPolicy", req, cb);
}
/**
* 开启SSL连接功能。
*/
async OpenSSL(req, cb) {
return this.request("OpenSSL", req, cb);
}
/**
* 本接口(DescribeDBFeatures)用于查询云数据库版本属性,包括是否支持数据库加密、数据库审计等功能。
*/
async DescribeDBFeatures(req, cb) {
return this.request("DescribeDBFeatures", req, cb);
}
/**
* 创建审计规则模板
*/
async CreateAuditRuleTemplate(req, cb) {
return this.request("CreateAuditRuleTemplate", req, cb);
}
/**
* 本接口(BalanceRoGroupLoad)用于重新均衡 RO 组内实例的负载。注意,RO 组内 RO 实例会有一次数据库连接瞬断,请确保应用程序能重连数据库,谨慎操作。
*/
async BalanceRoGroupLoad(req, cb) {
return this.request("BalanceRoGroupLoad", req, cb);
}
/**
* 本接口(IsolateDBInstance)用于隔离云数据库实例,隔离后不能通过IP和端口访问数据库。隔离的实例可在回收站中进行开机。若为欠费隔离,请尽快进行充值。
*/
async IsolateDBInstance(req, cb) {
return this.request("IsolateDBInstance", req, cb);
}
/**
* 本接口(RestartDBInstances)用于重启云数据库实例。
注意:
1、本接口只支持主实例进行重启操作;
2、实例状态必须为正常,并且没有其他异步任务在执行中。
*/
async RestartDBInstances(req, cb) {
return this.request("RestartDBInstances", req, cb);
}
/**
* 本接口(ModifyInstanceTag)用于对实例标签进行添加、修改或者删除。
*/
async ModifyInstanceTag(req, cb) {
return this.request("ModifyInstanceTag", req, cb);
}
/**
* 本接口(DescribeTimeWindow)用于查询云数据库实例的维护时间窗口。
*/
async DescribeTimeWindow(req, cb) {
return this.request("DescribeTimeWindow", req, cb);
}
/**
* 本接口(DescribeBackupOverview)用于查询用户的备份概览。返回用户当前备份总个数、备份总的占用容量、赠送的免费容量、计费容量(容量单位为字节)。
*/
async DescribeBackupOverview(req, cb) {
return this.request("DescribeBackupOverview", req, cb);
}
/**
* 停止 RO 复制,中断从主实例同步数据。
*/
async StopReplication(req, cb) {
return this.request("StopReplication", req, cb);
}
/**
* 开启/关闭CDB慢日志、错误日志投递CLS
*/
async ModifyDBInstanceLogToCLS(req, cb) {
return this.request("ModifyDBInstanceLogToCLS", req, cb);
}
/**
* 通过该API,可以关闭 CPU 弹性扩容。
*/
async StopCpuExpand(req, cb) {
return this.request("StopCpuExpand", req, cb);
}
/**
* 本接口(ModifyDBInstanceName)用于修改云数据库实例的名称。
*/
async ModifyDBInstanceName(req, cb) {
return this.request("ModifyDBInstanceName", req, cb);
}
/**
* 本接口(DescribeCdbZoneConfig)用于查询云数据库各地域可售卖的规格配置。
*/
async DescribeCdbZoneConfig(req, cb) {
return this.request("DescribeCdbZoneConfig", req, cb);
}
/**
* 实例关闭审计服务
*/
async CloseAuditService(req, cb) {
return this.request("CloseAuditService", req, cb);
}
/**
* 本接口(StopRollback) 用于撤销实例正在进行的回档任务,该接口返回一个异步任务id。 撤销结果可以通过 DescribeAsyncRequestInfo 查询任务的执行情况。
*/
async StopRollback(req, cb) {
return this.request("StopRollback", req, cb);
}
/**
* 本接口(DescribeInstanceUpgradeType)用于查询数据库实例升级类型。
*/
async DescribeInstanceUpgradeType(req, cb) {
return this.request("DescribeInstanceUpgradeType", req, cb);
}
/**
* 本接口(OfflineIsolatedInstances)用于立即下线隔离状态的云数据库实例。进行操作的实例状态必须为隔离状态,即通过 [查询实例列表](https://cloud.tencent.com/document/api/236/15872) 接口查询到 Status 值为 5 的实例。
该接口为异步操作,部分资源的回收可能存在延迟。您可以通过使用 [查询实例列表](https://cloud.tencent.com/document/api/236/15872) 接口,指定实例 InstanceId 和状态 Status 为 [5,6,7] 进行查询,若返回实例为空,则实例资源已全部释放。
注意,实例下线后,相关资源和数据将无法找回,请谨慎操作。
*/
async OfflineIsolatedInstances(req, cb) {
return this.request("OfflineIsolatedInstances", req, cb);
}
/**
* 本接口(CreateAuditLogFile)用于创建云数据库实例的审计日志文件。
*/
async CreateAuditLogFile(req, cb) {
return this.request("CreateAuditLogFile", req, cb);
}
/**
* 本接口(OpenDBInstanceGTID)用于开启云数据库实例的 GTID,只支持版本为 5.6 以及以上的实例。
*/
async OpenDBInstanceGTID(req, cb) {
return this.request("OpenDBInstanceGTID", req, cb);
}
/**
* 本接口(VerifyRootAccount)用于校验云数据库实例的 ROOT 账号是否有足够的权限进行授权操作。
*/
async VerifyRootAccount(req, cb) {
return this.request("VerifyRootAccount", req, cb);
}
/**
* 本接口(DescribeRollbackTaskDetail)用于查询云数据库实例回档任务详情。
*/
async DescribeRollbackTaskDetail(req, cb) {
return this.request("DescribeRollbackTaskDetail", req, cb);
}
/**
* 高可用实例一键迁移到集群版校验
*/
async CheckMigrateCluster(req, cb) {
return this.request("CheckMigrateCluster", req, cb);
}
/**
* 该接口用于修改用户当前地域的备份文件限制下载来源,可以设置内外网均可下载、仅内网可下载,或内网指定的vpc、ip可以下载。
*/
async ModifyBackupDownloadRestriction(req, cb) {
return this.request("ModifyBackupDownloadRestriction", req, cb);
}
/**
* 该接口(DescribeParamTemplates)查询参数模板列表,全地域公共参数Region均为ap-guangzhou。
*/
async DescribeParamTemplates(req, cb) {
return this.request("DescribeParamTemplates", req, cb);
}
/**
* 本接口(DescribeTasks)用于查询云数据库实例任务列表。
*/
async DescribeTasks(req, cb) {
return this.request("DescribeTasks", req, cb);
}
/**
* 本接口(DescribeBackupConfig)用于查询数据库备份配置信息。
*/
async DescribeBackupConfig(req, cb) {
return this.request("DescribeBackupConfig", req, cb);
}
/**
* 本接口(OpenDBInstanceEncryption)用于启用实例数据存储加密功能,支持用户指定自定义密钥。
注意,启用实例数据存储加密之前,需要进行以下操作:
1、进行 [实例初始化](https://cloud.tencent.com/document/api/236/15873) 操作;
2、开启 [KMS服务](https://console.cloud.tencent.com/kms2);
3、对云数据库(MySQL)[授予访问KMS密钥的权限](https://console.cloud.tencent.com/cam/role),角色名为MySQL_QCSRole,预设策略名为QcloudAccessForMySQLRole;
该 API 耗时可能到10s,客户端可能超时,如果调用 API 返回 InternalError ,请您调用DescribeDBInstanceInfo 确认后端加密是否开通成功。
*/
async OpenDBInstanceEncryption(req, cb) {
return this.request("OpenDBInstanceEncryption", req, cb);
}
/**
* 本接口(CloseWanService)用于关闭云数据库实例的外网访问。关闭外网访问后,外网地址将不可访问。
*/
async CloseWanService(req, cb) {
return this.request("CloseWanService", req, cb);
}
/**
* 该接口(DescribeDefaultParams)用于查询默认的可设置参数列表。
*/
async DescribeDefaultParams(req, cb) {
return this.request("DescribeDefaultParams", req, cb);
}
/**
* 本接口(DescribeAuditPolicies)用于查询云数据库实例的审计策略。
*/
async DescribeAuditPolicies(req, cb) {
return this.request("DescribeAuditPolicies", req, cb);
}
/**
* 本接口(DeleteDatabase)用于在云数据库实例中删除数据库。
*/
async DeleteDatabase(req, cb) {
return this.request("DeleteDatabase", req, cb);
}
/**
* 本接口(DescribeTagsOfInstanceIds)用于获取云数据库实例的标签信息。
*/
async DescribeTagsOfInstanceIds(req, cb) {
return this.request("DescribeTagsOfInstanceIds", req, cb);
}
/**
* 本接口(DescribeDatabases)用于查询云数据库实例的数据库信息,仅支持主实例和灾备实例,不支持只读实例。
*/
async DescribeDatabases(req, cb) {
return this.request("DescribeDatabases", req, cb);
}
/**
* 根据检索条件查询实例错误日志详情。只能查询一个月之内的错误日志。
使用时需要注意:可能存在单条错误日志太大,导致整个http请求的回包太大,进而引发接口超时。一旦发生超时,建议您缩小查询时的Limit参数值,从而降低包的大小,让接口能够及时返回内容。
*/
async DescribeErrorLogData(req, cb) {
return this.request("DescribeErrorLogData", req, cb);
}
/**
* 该接口 (SwitchDBInstanceMasterSlave) 支持用户主动切换实例主从角色。
*/
async SwitchDBInstanceMasterSlave(req, cb) {
return this.request("SwitchDBInstanceMasterSlave", req, cb);
}
/**
* 本接口(CreateDatabase)用于在云数据库实例中创建数据库。
*/
async CreateDatabase(req, cb) {
return this.request("CreateDatabase", req, cb);
}
/**
* 本接口(DisassociateSecurityGroups)用于安全组批量解绑实例。
*/
async DisassociateSecurityGroups(req, cb) {
return this.request("DisassociateSecurityGroups", req, cb);
}
/**
* 本接口(RenewDBInstance)用于续费云数据库实例,支持付费模式为包年包月的实例。按量计费实例可通过该接口续费为包年包月的实例。
*/
async RenewDBInstance(req, cb) {
return this.request("RenewDBInstance", req, cb);
}
/**
* 本接口(DescribeTables)用于查询云数据库实例的数据库表信息,仅支持主实例和灾备实例,不支持只读实例。
*/
async DescribeTables(req, cb) {
return this.request("DescribeTables", req, cb);
}
/**
* 本接口(DescribeAccountPrivileges)用于查询云数据库账户支持的权限信息。
*/
async DescribeAccountPrivileges(req, cb) {
return this.request("DescribeAccountPrivileges", req, cb);
}
/**
* 本接口(DescribeDataBackupOverview)用于查询用户在当前地域总的数据备份概览。
*/
async DescribeDataBackupOverview(req, cb) {
return this.request("DescribeDataBackupOverview", req, cb);
}
/**
* 本接口(ReleaseIsolatedDBInstances)用于恢复已隔离云数据库实例。仅用于按量计费实例的解隔离,包年包月实例的解隔离请使用 RenewDBInstance 。
*/
async ReleaseIsolatedDBInstances(req, cb) {
return this.request("ReleaseIsolatedDBInstances", req, cb);
}
/**
* 本接口(CreateCloneInstance) 用于从目标源实例创建一个克隆实例,可以指定克隆实例回档到源实例的指定物理备份文件或者指定的回档时间点。
*/
async CreateCloneInstance(req, cb) {
return this.request("CreateCloneInstance", req, cb);
}
/**
* 本接口(ModifyAuditConfig)用于修改云数据库审计策略的服务配置,包括审计日志保存时长等。
*/
async ModifyAuditConfig(req, cb) {
return this.request("ModifyAuditConfig", req, cb);
}
/**
* 本接口(ModifyInstancePasswordComplexity)用于修改云数据库实例的密码复杂度。
*/
async ModifyInstancePasswordComplexity(req, cb) {
return this.request("ModifyInstancePasswordComplexity", req, cb);
}
/**
* 本接口(ModifyTimeWindow)用于更新云数据库实例的维护时间窗口。
*/
async ModifyTimeWindow(req, cb) {
return this.request("ModifyTimeWindow", req, cb);
}
/**
* 根据置放群组ID删除置放群组(置放群组中有资源存在时不能删除该置放群组)
*/
async DeleteDeployGroups(req, cb) {
return this.request("DeleteDeployGroups", req, cb);
}
/**
* 本接口(SwitchForUpgrade)用于切换访问新实例,针对主升级中的实例处于待切换状态时,用户可主动发起该流程。
*/
async SwitchForUpgrade(req, cb) {
return this.request("SwitchForUpgrade", req, cb);
}
/**
* 删除审计规则模板
*/
async DeleteAuditRuleTemplates(req, cb) {
return this.request("DeleteAuditRuleTemplates", req, cb);
}
/**
* 本接口(DescribeBackups)用于查询云数据库实例的备份数据。
*/
async DescribeBackups(req, cb) {
return this.request("DescribeBackups", req, cb);
}
/**
* 查询数据库代理详情信息
*/
async DescribeCdbProxyInfo(req, cb) {
return this.request("DescribeCdbProxyInfo", req, cb);
}
/**
* 该接口(CreateParamTemplate)用于创建参数模板,全地域公共参数Region均为ap-guangzhou。
*/
async CreateParamTemplate(req, cb) {
return this.request("CreateParamTemplate", req, cb);
}
/**
* 本接口(CreateDBInstanceHour)用于创建按量计费的实例,可通过传入实例规格、MySQL 版本号和数量等信息创建云数据库实例,支持主实例、灾备实例和只读实例的创建。
该接口为异步接口,您还可以使用 [查询实例列表](https://cloud.tencent.com/document/api/236/15872) 接口查询该实例的详细信息。当该实例的 Status 为 1,且 TaskStatus 为 0,表示实例已经发货成功。
1. 首先请使用 [获取云数据库可售卖规格](https://cloud.tencent.com/document/api/236/17229) 接口查询可创建的实例规格信息,然后请使用 [查询数据库价格](https://cloud.tencent.com/document/api/236/18566) 接口查询可创建实例的售卖价格;
2. 单次创建实例最大支持 100 个,实例时长最大支持 36 个月;
3. 支持创建 MySQL 5.5、MySQL 5.6 、MySQL 5.7 和 MySQL 8.0 版本;
4. 支持创建主实例、灾备实例和只读实例;
5. 当入参指定 Port,ParamTemplateType 或 Password 时,该实例会进行初始化操作;
*/
async CreateDBInstanceHour(req, cb) {
return this.request("CreateDBInstanceHour", req, cb);
}
/**
* 本接口(AddTimeWindow)用于添加云数据库实例的维护时间窗口,以指定实例在哪些时间段可以自动执行切换访问操作。
*/
async AddTimeWindow(req, cb) {
return this.request("AddTimeWindow", req, cb);
}
/**
* 查询实例支持代理版本和参数
*/
async DescribeProxySupportParam(req, cb) {
return this.request("DescribeProxySupportParam", req, cb);
}
/**
* 本接口(DescribeDeviceMonitorInfo)用于查询云数据库物理机当天的监控信息,暂只支持内存488G、硬盘6T的实例查询。
*/
async DescribeDeviceMonitorInfo(req, cb) {
return this.request("DescribeDeviceMonitorInfo", req, cb);
}
/**
* 本接口(CreateBackup)用于创建数据库备份。
*/
async CreateBackup(req, cb) {
return this.request("CreateBackup", req, cb);
}
/**
* 本接口(ModifyDBInstanceVipVport)用于修改云数据库实例的IP和端口号,也可进行基础网络转 VPC 网络和 VPC 网络下的子网变更。
*/
async ModifyDBInstanceVipVport(req, cb) {
return this.request("ModifyDBInstanceVipVport", req, cb);
}
/**
* 本接口(DescribeDBInstanceConfig)用于云数据库实例的配置信息,包括同步模式,部署模式等。
*/
async DescribeDBInstanceConfig(req, cb) {
return this.request("DescribeDBInstanceConfig", req, cb);
}
/**
* 数据库代理增加代理地址
*/
async CreateCdbProxyAddress(req, cb) {
return this.request("CreateCdbProxyAddress", req, cb);
}
/**
* 本接口(DeleteAuditPolicy)用于删除用户的审计策略。
*/
async DeleteAuditPolicy(req, cb) {
return this.request("DeleteAuditPolicy", req, cb);
}
/**
* 本接口(DescribeProjectSecurityGroups)用于查询项目的安全组详情。
*/
async DescribeProjectSecurityGroups(req, cb) {
return this.request("DescribeProjectSecurityGroups", req, cb);
}
/**
* 本接口(DescribeSlowLogs)用于获取云数据库实例的慢查询日志。说明:若单次查询数据量过大,则有可能响应超时,建议缩短单次查询时间范围,如一小时,避免导致超时。
*/
async DescribeSlowLogs(req, cb) {
return this.request("DescribeSlowLogs", req, cb);
}
/**
* 本接口(InquiryPriceUpgradeInstances)用于查询云数据库实例升级的价格,支持查询按量计费或者包年包月实例的升级价格,实例类型支持主实例、灾备实例和只读实例。
*/
async InquiryPriceUpgradeInstances(req, cb) {
return this.request("InquiryPriceUpgradeInstances", req, cb);
}
/**
* 该接口用于修改实例本地binlog保留策略。
*/
async ModifyLocalBinlogConfig(req, cb) {
return this.request("ModifyLocalBinlogConfig", req, cb);
}
/**
* 本接口(CreateDBInstance)用于创建包年包月的云数据库实例(包括主实例、灾备实例和只读实例),可通过传入实例规格、MySQL 版本号、购买时长和数量等信息创建云数据库实例。
该接口为异步接口,您还可以使用 [查询实例列表](https://cloud.tencent.com/document/api/236/15872) 接口查询该实例的详细信息。当该实例的 Status 为1,且 TaskStatus 为0,表示实例已经发货成功。
1. 首先请使用 [获取云数据库可售卖规格](https://cloud.tencent.com/document/api/236/17229) 接口查询可创建的实例规格信息,然后请使用 [查询数据库价格](https://cloud.tencent.com/document/api/236/18566) 接口查询可创建实例的售卖价格;
2. 单次创建实例最大支持 100 个,实例时长最大支持 36 个月;
3. 支持创建 MySQL 5.5 、 MySQL 5.6 、 MySQL 5.7 、 MySQL 8.0 版本;
4. 支持创建主实例、只读实例、灾备实例;
5. 当入参指定 Port 和 ParamTemplateType 参数模板,相关参数才会自动初始化(不支持基础版实例);
6. 当入参指定 ParamTemplateId 或 AlarmPolicyList 时,需将SDK提升至最新版本方可支持;
*/
async CreateDBInstance(req, cb) {
return this.request("CreateDBInstance", req, cb);
}
/**
* 该接口(ModifyParamTemplate)用于修改参数模板,全地域公共参数Region均为ap-guangzhou。
*/
async ModifyParamTemplate(req, cb) {
return this.request("ModifyParamTemplate", req, cb);
}
/**
* 该接口(DescribeInstanceParams)用于查询实例的参数列表。
*/
async DescribeInstanceParams(req, cb) {
return this.request("DescribeInstanceParams", req, cb);
}
/**
* 本接口(DescribeBackupEncryptionStatus)用于查询实例默认备份加密状态。
*/
async DescribeBackupEncryptionStatus(req, cb) {
return this.request("DescribeBackupEncryptionStatus", req, cb);
}
/**
* 查询代理规格配置
*/
async DescribeProxyCustomConf(req, cb) {
return this.request("DescribeProxyCustomConf", req, cb);
}
/**
* 本接口(DescribeDeployGroupList)用于查询用户的置放群组列表,可以指定置放群组 ID 或置放群组名称。
*/
async DescribeDeployGroupList(req, cb) {
return this.request("DescribeDeployGroupList", req, cb);
}
/**
* 本接口(StopDBImportJob)用于终止数据导入任务。
*/
async StopDBImportJob(req, cb) {
return this.request("StopDBImportJob", req, cb);
}
/**
* 在不同过滤条件下的审计日志结果集中,选定特定的数据列进行聚合统计。
*/
async AnalyzeAuditLogs(req, cb) {
return this.request("AnalyzeAuditLogs", req, cb);
}
/**
* 本接口(CreateAccounts)用于创建云数据库的账户,需要指定新的账户名和域名,以及所对应的密码,同时可以设置账号的备注信息以及最大可用连接数。
*/
async CreateAccounts(req, cb) {
return this.request("CreateAccounts", req, cb);
}
/**
* 调整数据库代理配置
*/
async AdjustCdbProxy(req, cb) {
return this.request("AdjustCdbProxy", req, cb);
}
/**
* 本接口(UpgradeDBInstanceEngineVersion)用于升级云数据库实例版本,实例类型支持主实例、灾备实例和只读实例。
*/
async UpgradeDBInstanceEngineVersion(req, cb) {
return this.request("UpgradeDBInstanceEngineVersion", req, cb);
}
/**
* 本接口(DescribeAuditLogFiles)用于查询云数据库实例的审计日志文件。
*/
async DescribeAuditLogFiles(req, cb) {
return this.request("DescribeAuditLogFiles", req, cb);
}
/**
* 本接口(DescribeBackupDecryptionKey)用于查询备份文件解密密钥。
*/
async DescribeBackupDecryptionKey(req, cb) {
return this.request("DescribeBackupDecryptionKey", req, cb);
}
/**
* 该接口(DescribeInstanceParamRecords)用于查询实例参数修改历史。
*/
async DescribeInstanceParamRecords(req, cb) {
return this.request("DescribeInstanceParamRecords", req, cb);
}
/**
* 本接口(DescribeBackupSummaries)用于查询备份的统计情况,返回以实例为维度的备份占用容量,以及每个实例的数据备份和日志备份的个数和容量(容量单位为字节)。
*/
async DescribeBackupSummaries(req, cb) {
return this.request("DescribeBackupSummaries", req, cb);
}
/**
* 该接口(DescribeParamTemplateInfo)用于查询参数模板详情,全地域公共参数Region均为ap-guangzhou。
*/
async DescribeParamTemplateInfo(req, cb) {
return this.request("DescribeParamTemplateInfo", req, cb);
}
/**
* 本接口(DescribeBinlogBackupOverview)用于查询用户在当前地域总的日志备份概览。
*/
async DescribeBinlogBackupOverview(req, cb) {
return this.request("DescribeBinlogBackupOverview", req, cb);
}
/**
* 本接口(SwitchDrInstanceToMaster)用于将云数据库灾备实例切换为主实例,注意请求必须发到灾备实例所在的地域。
*/
async SwitchDrInstanceToMaster(req, cb) {
return this.request("SwitchDrInstanceToMaster", req, cb);
}
/**
* 本接口(DeleteAccounts)用于删除云数据库的账户。
*/
async DeleteAccounts(req, cb) {
return this.request("DeleteAccounts", req, cb);
}
/**
* 查询实例基本信息(实例 ID ,实例名称,是否开通加密 )
*/
async DescribeDBInstanceInfo(req, cb) {
return this.request("DescribeDBInstanceInfo", req, cb);
}
/**
* 本接口(DescribeClusterInfo)用于查询集群版实例信息。
*/
async DescribeClusterInfo(req, cb) {
return this.request("DescribeClusterInfo", req, cb);
}
/**
* 本接口(DescribeRollbackRangeTime)用于查询云数据库实例可回档的时间范围。
*/
async DescribeRollbackRangeTime(req, cb) {
return this.request("DescribeRollbackRangeTime", req, cb);
}
/**
* 请求关闭数据库代理地址
*/
async CloseCdbProxyAddress(req, cb) {
return this.request("CloseCdbProxyAddress", req, cb);
}
/**
* 本接口(DeleteBackup)用于删除数据库备份。本接口只支持删除手动发起的备份。
*/
async DeleteBackup(req, cb) {
return this.request("DeleteBackup", req, cb);
}
/**
* 本接口(DescribeRoMinScale)用于获取只读实例购买、升级时的最小规格。
*/
async DescribeRoMinScale(req, cb) {
return this.request("DescribeRoMinScale", req, cb);
}
/**
* 修改代理地址描述信息
*/
async ModifyCdbProxyAddressDesc(req, cb) {
return this.request("ModifyCdbProxyAddressDesc", req, cb);
}
/**
* 本接口(ModifyAccountHost)用于修改云数据库账户的主机。
*/
async ModifyAccountHost(req, cb) {
return this.request("ModifyAccountHost", req, cb);
}
/**
* 开启 RO 复制,从主实例同步数据。
*/
async StartReplication(req, cb) {
return this.request("StartReplication", req, cb);
}
/**
* 调整数据库代理地址配置
*/
async AdjustCdbProxyAddress(req, cb) {
return this.request("AdjustCdbProxyAddress", req, cb);
}
/**
* 获取审计实例列表
*/
async DescribeAuditInstanceList(req, cb) {
return this.request("DescribeAuditInstanceList", req, cb);
}
/**
* 本接口(DescribeAuditConfig)用于查询云数据库审计策略的服务配置,包括审计日志保存时长等。
*/
async DescribeAuditConfig(req, cb) {
return this.request("DescribeAuditConfig", req, cb);
}
/**
* 本接口(ModifyInstanceParam)用于修改云数据库实例的参数。
*/
async ModifyInstanceParam(req, cb) {
return this.request("ModifyInstanceParam", req, cb);
}
/**
* 关闭数据库代理
*/
async CloseCDBProxy(req, cb) {
return this.request("CloseCDBProxy", req, cb);
}
/**
* 修改置放群组的名称或者描述
*/
async ModifyNameOrDescByDpId(req, cb) {
return this.request("ModifyNameOrDescByDpId", req, cb);
}
/**
* 本接口(ModifyAccountMaxUserConnections)用于修改云数据库账户最大可用连接数。
*/
async ModifyAccountMaxUserConnections(req, cb) {
return this.request("ModifyAccountMaxUserConnections", req, cb);
}
/**
* 本接口(DescribeAsyncRequestInfo)用于查询云数据库实例异步任务的执行结果。
*/
async DescribeAsyncRequestInfo(req, cb) {
return this.request("DescribeAsyncRequestInfo", req, cb);
}
/**
* 本接口(DescribeAuditLogs)用于查询数据库审计日志。
*/
async DescribeAuditLogs(req, cb) {
return this.request("DescribeAuditLogs", req, cb);
}
/**
* 本接口(DescribeDBInstanceRebootTime)用于查询云数据库实例重启预计所需的时间。
*/
async DescribeDBInstanceRebootTime(req, cb) {
return this.request("DescribeDBInstanceRebootTime", req, cb);
}
/**
* 本接口(DescribeDBInstances)用于查询云数据库实例列表,支持通过项目 ID、实例 ID、访问地址、实例状态等过滤条件来筛选实例。支持查询主实例、灾备实例和只读实例信息列表。
*/
async DescribeDBInstances(req, cb) {
return this.request("DescribeDBInstances", req, cb);
}
/**
* 本接口(ModifyRoGroupInfo)用于更新云数据库只读组的信息。包括设置实例延迟超限剔除策略,设置只读实例读权重,设置复制延迟时间等。
*/
async ModifyRoGroupInfo(req, cb) {
return this.request("ModifyRoGroupInfo", req, cb);
}
/**
* 本接口(CreateAuditRule)用于创建用户在当前地域的审计规则。
*/
async CreateAuditRule(req, cb) {
return this.request("CreateAuditRule", req, cb);
}
/**
* 本接口(DescribeDBInstanceCharset)用于查询云数据库实例的字符集,获取字符集的名称。
*/
async DescribeDBInstanceCharset(req, cb) {
return this.request("DescribeDBInstanceCharset", req, cb);
}
/**
* 本接口(AssociateSecurityGroups)用于安全组批量绑定实例。
*/
async AssociateSecurityGroups(req, cb) {
return this.request("AssociateSecurityGroups", req, cb);
}
/**
* 本接口(DescribeDBPrice)用于查询购买或续费云数据库实例的价格,支持查询按量计费或者包年包月的价格。可传入实例类型、购买时长、购买数量、内存大小、硬盘大小和可用区信息等来查询实例价格。可传入实例名称来查询实例续费价格。
注意:对某个地域进行询价,请使用对应地域的接入点,接入点信息请参照 <a href="https://cloud.tencent.com/document/api/236/15832">服务地址</a> 文档。例如:对广州地域进行询价,请把请求发到:cdb.ap-guangzhou.tencentcloudapi.com。同理对上海地域询价,把请求发到:cdb.ap-shanghai.tencentcloudapi.com。
*/
async DescribeDBPrice(req, cb) {
return this.request("DescribeDBPrice", req, cb);
}
/**
* 本接口(ModifyAccountPrivileges)用于修改云数据库的账户的权限信息。
注意,修改账号权限时,需要传入该账号下的全量权限信息。用户可以先通过 [查询云数据库账户的权限信息
](https://cloud.tencent.com/document/api/236/17500) 查询该账号下的全量权限信息,然后进行权限修改。
*/
async ModifyAccountPrivileges(req, cb) {
return this.request("ModifyAccountPrivileges", req, cb);
}
/**
* 本接口(DescribeDBImportRecords)用于查询云数据库导入任务操作日志。
*/
async DescribeDBImportRecords(req, cb) {
return this.request("DescribeDBImportRecords", req, cb);
}
/**
* 查询 SSL 开通情况。如果已经开通 SSL ,会同步返回证书下载链接。
*/
async DescribeSSLStatus(req, cb) {
return this.request("DescribeSSLStatus", req, cb);
}
/**
* 本接口(DescribeDBSwitchRecords)用于查询云数据库实例切换记录。
*/
async DescribeDBSwitchRecords(req, cb) {
return this.request("DescribeDBSwitchRecords", req, cb);
}
/**
* 本接口(CreateDBImportJob)用于创建云数据库数据导入任务。
注意,用户进行数据导入任务的文件,必须提前上传到腾讯云。用户须在控制台进行文件导入。
*/
async CreateDBImportJob(req, cb) {
return this.request("CreateDBImportJob", req, cb);
}
/**
* 本接口(DescribeAccounts)用于查询云数据库的所有账户信息。
*/
async DescribeAccounts(req, cb) {
return this.request("DescribeAccounts", req, cb);
}
/**
* 通过该 API 可以查询实例的 CPU 弹性扩容策略
*/
async DescribeCpuExpandStrategy(req, cb) {
return this.request("DescribeCpuExpandStrategy", req, cb);
}
/**
* 重新负载均衡数据库代理
*/
async ReloadBalanceProxyNode(req, cb) {
return this.request("ReloadBalanceProxyNode", req, cb);
}
/**
* 本接口(ModifyBackupEncryptionStatus)用于设置实例备份文件是否加密。
*/
async ModifyBackupEncryptionStatus(req, cb) {
return this.request("ModifyBackupEncryptionStatus", req, cb);
}
/**
* 该接口用户查询当前地域用户设置的默认备份下载来源限制。
*/
async DescribeBackupDownloadRestriction(req, cb) {
return this.request("DescribeBackupDownloadRestriction", req, cb);
}
/**
* 重置实例ROOT账号,初始化账号权限
*/
async ResetRootAccount(req, cb) {
return this.request("ResetRootAccount", req, cb);
}
/**
* 修改审计规则模板
*/
async ModifyAuditRuleTemplates(req, cb) {
return this.request("ModifyAuditRuleTemplates", req, cb);
}
/**
* 本接口(ModifyAccountPassword)用于修改云数据库账户的密码。
*/
async ModifyAccountPassword(req, cb) {
return this.request("ModifyAccountPassword", req, cb);
}
/**
* 本接口(DescribeUploadedFiles)用于查询用户导入的SQL文件列表,全地域公共参数Region均为ap-shanghai。
*/
async DescribeUploadedFiles(req, cb) {
return this.request("DescribeUploadedFiles", req, cb);
}
/**
* 本接口(ModifyAccountDescription)用于修改云数据库账户的备注信息。
*/
async ModifyAccountDescription(req, cb) {
return this.request("ModifyAccountDescription", req, cb);
}
/**
* 条件检索实例的慢日志。只允许查看一个月之内的慢日志。
使用时需要注意:可能存在单条慢日志太大,导致整个http请求的回包太大,进而引发接口超时。一旦发生超时,建议您缩小查询时的Limit参数值,从而降低包的大小,让接口能够及时返回内容。
*/
async DescribeSlowLogData(req, cb) {
return this.request("DescribeSlowLogData", req, cb);
}
/**
* CDB实例开通审计服务
*/
async OpenAuditService(req, cb) {
return this.request("OpenAuditService", req, cb);
}
/**
* 本接口(DeleteAuditLogFile)用于删除云数据库实例的审计日志文件。
*/
async DeleteAuditLogFile(req, cb) {
return this.request("DeleteAuditLogFile", req, cb);
}
/**
* 查询审计规则模板信息
*/
async DescribeAuditRuleTemplates(req, cb) {
return this.request("DescribeAuditRuleTemplates", req, cb);
}
/**
* 本接口(ModifyBackupConfig)用于修改数据库备份配置信息。
*/
async ModifyBackupConfig(req, cb) {
return this.request("ModifyBackupConfig", req, cb);
}
/**
* 本接口(DescribeAuditRules)用于查询用户在当前地域的审计规则。
*/
async DescribeAuditRules(req, cb) {
return this.request("DescribeAuditRules", req, cb);
}
/**
* 本接口(DescribeRemoteBackupConfig)用于查询数据库异地备份配置信息。
*/
async DescribeRemoteBackupConfig(req, cb) {
return this.request("DescribeRemoteBackupConfig", req, cb);
}
/**
* 修改数据库代理地址VPC信息
*/
async ModifyCdbProxyAddressVipAndVPort(req, cb) {
return this.request("ModifyCdbProxyAddressVipAndVPort", req, cb);
}
/**
* 该接口不再维护,参考CreateDBInstance+API文档,在发货时即可完成初始化。
本接口(InitDBInstances)用于初始化云数据库实例,包括初始化密码、默认字符集、实例端口号等。该接口已经废弃,在发货接口CreateDBInstance、CreateDBInstanceHour可以直接使用参数Password设置密码,使用参数ParamList设置字符集,使用参数Port设置端口号。
*/
async InitDBInstances(req, cb) {
return this.request("InitDBInstances", req, cb);
}
/**
* 本接口(DescribeDBInstanceLogToCLS)用于查询实例慢日志、错误日志投递CLS的配置,通过AppId、Region以及实例ID过滤出当前实例日志投递CLS的配置。
*/
async DescribeDBInstanceLogToCLS(req, cb) {
return this.request("DescribeDBInstanceLogToCLS", req, cb);
}
/**
* 查询规则模板变更记录
*/
async DescribeAuditRuleTemplateModifyHistory(req, cb) {
return this.request("DescribeAuditRuleTemplateModifyHistory", req, cb);
}
/**
* 主实例创建数据库代理
*/
async CreateCdbProxy(req, cb) {
return this.request("CreateCdbProxy", req, cb);
}
/**
* 本接口(ModifyAutoRenewFlag)用于修改云数据库实例的自动续费标记。仅支持包年包月的实例设置自动续费标记。
*/
async ModifyAutoRenewFlag(req, cb) {
return this.request("ModifyAutoRenewFlag", req, cb);
}
/**
* 数据库代理配置变更或则升级版本后手动发起立即切换
*/
async SwitchCDBProxy(req, cb) {
return this.request("SwitchCDBProxy", req, cb);
}
/**
* 本接口(ModifyAuditService)用于修改云数据库审计日志保存时长、审计规则等服务配置
*/
async ModifyAuditService(req, cb) {
return this.request("ModifyAuditService", req, cb);
}
/**
* 配置数据库代理参数
*/
async ModifyCdbProxyParam(req, cb) {
return this.request("ModifyCdbProxyParam", req, cb);
}
/**
* 该接口(StartBatchRollback)用于批量回档云数据库实例的库表。
*/
async StartBatchRollback(req, cb) {
return this.request("StartBatchRollback", req, cb);
}
/**
* 本接口(ModifyDBInstanceProject)用于修改云数据库实例的所属项目。
*/
async ModifyDBInstanceProject(req, cb) {
return this.request("ModifyDBInstanceProject", req, cb);
}
/**
* 该接口用于查询实例本地binlog保留策略。
*/
async DescribeLocalBinlogConfig(req, cb) {
return this.request("DescribeLocalBinlogConfig", req, cb);
}
/**
* 本接口(OpenWanService)用于开通实例外网访问。
注意,实例开通外网访问之前,需要先将实例进行 [实例初始化](https://cloud.tencent.com/document/api/236/15873) 操作。
*/
async OpenWanService(req, cb) {
return this.request("OpenWanService", req, cb);
}
/**
* 本接口(ModifyAuditRule)用于修改用户的审计规则。
*/
async ModifyAuditRule(req, cb) {
return this.request("ModifyAuditRule", req, cb);
}
/**
* 本接口(ModifyDBInstanceSecurityGroups)用于修改实例绑定的安全组。
*/
async ModifyDBInstanceSecurityGroups(req, cb) {
return this.request("ModifyDBInstanceSecurityGroups", req, cb);
}
/**
* 本接口(DeleteAuditRule)用于删除用户的审计规则。
*/
async DeleteAuditRule(req, cb) {
return this.request("DeleteAuditRule", req, cb);
}
/**
* 通过该API,可以开启CPU弹性扩容,包括一次性的手动扩容以及自动弹性扩容。
*/
async StartCpuExpand(req, cb) {
return this.request("StartCpuExpand", req, cb);
}
/**
* 本接口(DescribeSupportedPrivileges)用于查询云数据库的支持的权限信息,包括全局权限,数据库权限,表权限以及列权限。
*/
async DescribeSupportedPrivileges(req, cb) {
return this.request("DescribeSupportedPrivileges", req, cb);
}
/**
* 该接口(DeleteParamTemplate)用于删除参数模板,全地域公共参数Region均为ap-guangzhou。
*/
async DeleteParamTemplate(req, cb) {
return this.request("DeleteParamTemplate", req, cb);