全部产品
云市场

录入数据库实例

更新时间:2019-07-15 10:03:06

描述

DMS企业版用户的管理员、DBA(即产品内【系统管理】-【用户管理】中的管理员与DBA角色的用户)才可以通过这个接口增加录入本企业的新数据库实例。

请求参数

参数 类型 是否必选 示例值 描述
Tid Long -1

租户id;取自【系统管理】-【实例管理】或【系统管理】-【用户管理】的产品规格

Port Integer 3306

目标数据库的访问端口

Sid String dmstest

SID/数据库,InstanceType取值为PostgreSQL、Oracle时此值必传

DatabaseUser String dmstest

数据库访问账号

DatabasePassword String **

数据库访问密码

InstanceAlias String 测试实例

实例名称,用户后续帮助用户快速区分定位

DbaUid Long 12345678

实例的DBA,传入DBA的阿里云uid;取自【系统管理】-【用户管理】-UID

SafeRule String 测试使用

实例的安全规则,传入企业内的安全规则名称;取自【系统管理】-【安全规则】-安全规则列表中的“安全规则名称”

QueryTimeout Integer 60

查询超时时间,单位:s(秒)

ExportTimeout Integer 600

导出超时时间,单位:s(秒)

InstanceType String MySQL

数据库类型,取值为:

  • MySQL
  • SQLServer
  • PostgreSQL
  • Oracle
  • DRDS
  • OceanBase
  • Mongo
  • Redis
InstanceSource String RDS

数据库实例来源,取值和说明如下:

  • PUBLIC_OWN: 代表公网自建
  • RDS: 代表RDS实例
  • ECS_OWN: 代表ECS自建
  • VPC_IDC: 代表VPC专线
NetworkType String VPC

网络类型,取值和说明如下:

  • CLASSIC: 经典网络
  • VPC: VPC网络
EnvType String product

环境类型,取值和说明如下:

  • product:生产
  • dev: 测试
EcsInstanceId String i-xxxxxxxxx

ECS的实例ID,InstanceSource取值为ECS自建库此值必传

VpcId String vpc-xxxxxxxxxxxxxxxxxxxxx

VPCID,InstanceSource取值为VPC专线IDC时此值必传

EcsRegion String cn-hangzhou

ECS所在区域,InstanceSource取值为ECS自建库、VPC专线IDC时此值必传

Host String dmstest.rds.aliyun.com

目标数据库的主机地址

返回参数

参数 类型 示例值 描述
RequestId String F4E2A94B-604F-43FF-93E7-F4EE3DCF412E

请求唯一ID

Success Boolean true

true:录入成功 false:录入失败

ErrorMessage String The specified instance already exists.

错误消息

ErrorCode String 404

错误码

示例

请求示例

  1. /?Tid=
  2. &InstanceType=
  3. &InstanceSource=
  4. &NetworkType=
  5. &EnvType=
  6. &Host=
  7. &Port=
  8. &DatabaseUser=
  9. &DatabasePassword=
  10. &InstanceAlias=
  11. &DbaUid=
  12. &SafeRule=
  13. &QueryTimeout=
  14. &ExportTimeout=
  15. &EcsInstanceId=
  16. &VpcId=
  17. &EcsRegion=
  18. &Sid=
  19. &<公共请求参数>

正常返回示例

XML 格式

  1. <RegisterInstanceResponse>
  2. <RequestId>D4F02899-CE79-4DFD-9893-5217DA70B363</RequestId>
  3. <Success>true</Success>
  4. </RegisterInstanceResponse>

JSON 格式

  1. {
  2. "RequestId":"F4E2A94B-604F-43FF-93E7-F4EE3DCF412E",
  3. "Success":true
  4. }

异常返回示例

XML 格式

  1. <Error>
  2. <RequestId>D4F02899-CE79-4DFD-9893-5217DA70B363</RequestId>
  3. <HostId>dms-enterprise.aliyuncs.com</HostId>
  4. <Code>InstanceExisted</Code>
  5. <Message>The specified instance already exists.</Message>
  6. </Error>

JSON 格式

  1. {
  2. "Code":"InstanceExisted",
  3. "HostId":"dms-enterprise.aliyuncs.com",
  4. "Message":"The specified instance already exists.",
  5. "RequestId":"F4E2A94B-604F-43FF-93E7-F4EE3DCF412E"
  6. }

Python sdk示例

  • 示例为VPC专线实例的录入
  1. #coding=utf-8
  2. from aliyunsdkcore.client import AcsClient
  3. from aliyunsdkdms_enterprise.request.v20181101.RegisterInstanceRequest import RegisterInstanceRequest
  4. client = AcsClient(
  5. "<your-access-key-id>",
  6. "<your-access-key-secret>",
  7. "<your-region-id>"
  8. )
  9. # VPC_IDC实例注册示例
  10. request = RegisterInstanceRequest()
  11. # 租户ID
  12. request.set_Tid(1)
  13. # 实例host
  14. request.set_Host("192.168.16.113")
  15. # 实例port
  16. request.set_Port(3314)
  17. # 实例db类型 eg : MySQL
  18. request.set_InstanceType("MySQL")
  19. # 实例来源 eg : VPC_IDC
  20. request.set_InstanceSource("VPC_IDC")
  21. # 网络类型 type: eg : VPC
  22. request.set_NetworkType("VPC")
  23. request.set_EnvType("PRODUCT")
  24. # request.set_EcsInstanceId()
  25. # 实例 vpc id
  26. request.set_VpcId("实例 vpc id")
  27. # 实例 ecs region eg: cn-hangzhou
  28. request.set_EcsRegion("实例 ecs region")
  29. # request.set_Sid();
  30. # 实例db登录用户
  31. request.set_DatabaseUser("实例db登录用户")
  32. # 实例db登录密码
  33. request.set_DatabasePassword("实例db登录密码")
  34. # 实例别名, 方便DMS企业版里面区分实例用
  35. request.set_InstanceAlias("实例别名")
  36. # 实例dba 阿里云uid(此用户必须先在DMS企业版录入, 或者使用api提前录入)
  37. request.set_DbaUid(-1)
  38. request.set_SafeRule("DMS企业版里面配置的安全规则的规则名")
  39. request.set_QueryTimeout(60)
  40. request.set_ExportTimeout(600)
  41. response = client.do_action_with_exception(request)
  42. print response

错误码

查看本产品错误码