本文为您介绍 OceanBase 迁移服务(OceanBase Migration Service,OMS)社区版提供的 OpenAPI:查询数据源列表 ListDataSource。
功能说明
本接口用于查询已创建数据源的列表。
调用说明
接口约束
本接口适用于 OMS 社区版 V4.1.1-CE 及之后版本。
请求路径
POST /api/v2?Action=ListDataSource
请求参数
| 参数 |
类型 |
描述 |
| searchKey |
string |
数据源的名称或 ID。 |
| types |
array |
数据源类型的集合。 |
| sortField |
string |
数据源排序的字段。 |
| order |
string |
数据源排序的顺序,包括 asc(升序)和 descend(降序)。 |
| pageNumber |
integer |
页序号,分页查询时生效。 |
| pageSize |
integer |
每页条数,默认值为 10。 |
返回结果
| 参数 |
类型 |
描述 |
| success |
boolean |
是否调用成功。 |
| errorDetail |
object |
错误详情。 |
| code |
string |
错误码。 |
| message |
string |
描述信息。 |
| advice |
string |
建议。 |
| requestId |
string |
请求 ID。 |
| pageNumber |
integer |
页序号,分页查询时生效。 |
| pageSize |
integer |
页大小,分页查询时生效。 |
| totalCount |
integer |
总数,分页查询时生效。 |
| cost |
string |
请求耗时,单位为秒。 |
| data |
string |
数据源列表的相关信息。 |
| ├─ id |
string |
数据源终端标识。 |
| ├─ name |
string |
数据源的名称。 |
| ├─ type |
string |
数据源的类型。 |
| ├─ role |
string |
数据源的角色,包括 MASTER 和 SLAVE。 |
| ├─ owner |
string |
数据源的 Owner。 |
| ├─ tenant |
string |
数据库租户的名称。 |
| ├─ cluster |
string |
数据库租户所在集群的名称。 |
| ├─ schema |
string |
数据库的名称。填写后,仅对该数据库进行数据迁移或数据同步。 |
| ├─ ip |
string |
数据库宿主机的 IP。 |
| ├─ port |
integer |
数据库宿主机 IP 的端口号。 |
| ├─ userName |
string |
用于数据迁移或数据同步的数据库用户的名称。 |
| ├─ region |
string |
数据源所属的地域。 |
| ├─ description |
string |
数据源的备注信息,不能超过 128 个字符。 |
| ├─ ocpName |
string |
关联的 OCP 名称。 |
| ├─ oracleSid |
string |
Oracle 数据库的 SID。 |
| ├─ oracleNlsLengthSemantics |
string |
nls_length_semantics 属性,仅针对 Oracle 和 OceanBase 数据库 Oracle 兼容模式数据源。 |
| ├─ operatingSystem |
string |
操作系统。OceanBase 数据源没有该参数。 |
| ├─ version |
string |
版本。 |
| ├─ timezone |
string |
时区。 |
| ├─ charset |
string |
字符编码。 |
| ├─ tryKeepHb |
boolean |
是否允许尝试维持心跳。 |
| ├─ gmtCreate |
string |
数据源的创建时间,以 UTC + 0 时区的时间格式展示。 |
| ├─ gmtModified |
string |
数据源的修改时间,以 UTC + 0 时区的时间格式展示。 |
| ├─ partnerId |
string |
对应主备库的 ID。 |
| ├─ connExtraAttributes |
object |
连接额外属性。具体返回字段请参见《附录》模块的内容。 |
示例
请求示例
{
"searchKey": "",
"types": [
"MYSQL"
],
"sortField": "gmtCreate",
"order": "asc",
"pageNumber": 1,
"pageSize": 10
}
返回示例
{
"success": true,
"errorDetail": null,
"code": null,
"message": null,
"advice": null,
"requestId": "d5627aa****929",
"pageNumber": 1,
"pageSize": 10,
"totalCount": 54,
"cost": "18 ms",
"data": [
{
"id": "e_4w****v",
"name": "RATION***1DBUTF11",
"type": "OB_MYSQL",
"role": "MASTER",
"owner": "ade**",
"tenant": "dwr***",
"cluster": "desx***",
"schema": "t12***mysql",
"ip": "xxx.xxx.xxx.1",
"port": 2883,
"userName": "dexf***",
"region": "cn-beijing",
"description": "test",
"ocpName": "xxx.xxx.xxx.2",
"operatingSystem": null,
"version": "4.1.0.1",
"timezone": "+08:00",
"charset": "UTF8",
"tryKeepHb": true,
"gmtCreate": "2023-07-13T19:57:28.000+00:00",
"gmtModified": "2023-07-13T20:37:28.000+00:00",
"partnerId": null,
"connExtraAttributes": {}
}
]
}
附录
Kafka
{
"connExtraAttributes":{
"endpoint":"xxx.xxx.xxx.1:2883",
"username":null,
"enableSSL":null,
"enableSASL":null,
"saslMechanism":null,
"disableIdentificationAlgorithm":false
}
}
| 参数 |
类型 |
描述 |
| endpoint |
string |
服务地址。 |
| username |
string |
用户名。当您选择认证方式为 PLAIN、SCRAM-SHA-256 和 SCRAM-SHA-512 时,该参数必填。 |
| enableSSL |
boolean |
是否开启 SSL 认证。如果开启,则需要上传授信证书。 |
| enableSASL |
boolean |
是否开启 SASL 认证。 |
| saslMechanism |
KafkaSaslMechanisnEnum |
加密方式,包括 PLAIN、SCRAM-SHA-256、SCRAM-SHA-512 和 KERBEROS。 |
| disableIdentificationAlgorithm |
boolean |
SSL 加密时,是否开启主机名验证。 |
DataHub
{
"connExtraAttributes":{
"endpoint":"xxx.xxx.xxx.1:2883",
"project":"detx***"
}
}
| 参数 |
类型 |
描述 |
| endpoint |
string |
服务地址。 |
| project |
string |
任务的名称。 |
RocketMQ
{
"connExtraAttributes":{
"endpoint":"xxx.xxx.xxx.1:2883",
"endpointType":null,
"version":null
}
}
| 参数 |
类型 |
描述 |
| endpoint |
string |
服务地址。 |
| endpointType |
CloudRocketMQEndpoint.Type |
服务地址的类型。 |
| version |
CloudRocketMQInst.Version |
RocketMQ 的版本。 |
OceanBase
{
"connExtraAttributes":{
"cluster":"xgez***",
"tenant":"gexr**",
"isLogicSource":false,
"useLogProxy":true,
"drcUser":"tes***",
"configUrl":"http://xxx.xxx.xxx.1:2883/service****",
"logProxyIp":"xxx.xxx.xxx.2",
"logProxyPort":2883,
"noUserAuth":false
}
}
| 参数 |
类型 |
描述 |
| cluster |
string |
集群的名称。 |
| tenant |
string |
租户的名称。 |
| isLogicSource |
boolean |
是否为逻辑数据源。 |
| useLogProxy |
boolean |
是否使用 LogProxy。 |
| drcUser |
string |
drc_user 的配置。 |
| configUrl |
string |
用于获取 OceanBase 数据库底层服务器的真实地址。 |
| logProxyIp |
string |
LogProxy 服务的 IP 地址。 |
| logProxyPort |
integer |
LogProxy 服务的端口。 |
| noUserAuth |
boolean |
对于同步 DataWorks 的接口,数据源是 OMS 自动生成的。如果没有用户账号和密码,则不能连接用户的 OceanBase 数据库。 |
TiDB
{
"connExtraAttributes":{
"kafkaId":"e_edz****",
"kafkaTopic":"test**",
"kafkaName":"denz***"
}
}
| 参数 |
类型 |
描述 |
| kafkaId |
string |
绑定的 Kafka 数据源的 ID。 |
| kafkaTopic |
string |
绑定的 Kafka Topic 的名称。 |
| kafkaName |
string |
绑定的 Kafka 数据源的名称。 |