获取数据源列表
分页查询数据源列表,支持通过数据源 ID、数据源名称、关键字、数据源类型进行过滤。
请求地址:/openapi/v1/datasource/list
请求方法:GET
请求参数
| 参数 | 类型 | 是否必选 | 说明 | 示例 |
|---|---|---|---|---|
| datasourceId | String | 否 | 数据源 ID。 | ds-d92lj22cb03k |
| datasourceType | String | 否 | 数据源类型。支持 MYSQL、MARIADB、POSTGRESQL、SQLSERVER、DAMENG、KINGBASE、KINGBASE_ORACLE、MILVUS、MONGODB。取值大小写不敏感,建议使用大写。 | MYSQL |
| name | String | 否 | 数据源名称。 | 生产环境 MySQL |
| keyword | String | 否 | 关键字,用于按数据源信息进行模糊搜索。 | mongo |
| current | Integer | 否 | 当前页码,从 1 开始,默认 1。 | 1 |
| pageSize | Integer | 否 | 分页大小,默认 10。 | 50 |
返回参数
| 参数 | 类型 | 说明 | 示例 |
|---|---|---|---|
| success | Bool | 接口调用是否成功。返回值:true、false。 | true |
| requestId | String | 请求 ID。 | Mi6y0FCN-BHEEaHAnCFFp9DFdAAk0OUZ |
| data | Array | 数据源详情数组。每个对象包含通用字段,并可能根据数据源类型返回 sslConfig、multiTag 或数据源专属字段。 | { "datasourceId": "ds-d92mr1g445le", "name": "127.0.0.1", "datasourceType": "MySQL" } |
| current | Integer | 当前页码。 | 1 |
| pageSize | Integer | 每页的大小。 | 50 |
| total | Integer | 数据源总数。 | 6 |
通用数据源响应字段
data 数组中的每个对象包含以下通用字段。
| 参数 | 类型 | 说明 | 示例 |
|---|---|---|---|
| datasourceId | String | 数据源 ID。 | ds-d92mr1g445le |
| orgId | String | 组织 ID。 | 2697478995911717 |
| name | String | 数据源名称。 | 生产环境 MySQL |
| datasourceType | String | 数据源类型。 | MYSQL |
| username | String | 数据源访问账号。 | root |
| host | String | 数据源连接地址。 | 127.0.0.1 |
| port | Integer | 数据源端口。 | 3306 |
| envId | String | 数据源所属环境。 | env-dev |
| regionId | String | 数据源所属地域。 | aliyun-cn-hangzhou |
| networkType | String | 数据源接入类型。 | Public |
| multiTag | String | 多活标记。未配置时可能返回为空。 | active |
| sslConfig | Object | SSL 配置。仅 MySQL、SQLServer、PostgreSQL 数据源可能返回。 | {"securityConfig":"PREFERRED"} |
SSL 配置响应字段
当 data 数组中的对象包含 sslConfig 时,sslConfig 可能包含以下字段。不同数据源类型支持的字段不同。
| 参数 | 类型 | 适用数据源 | 说明 | 示例 |
|---|---|---|---|---|
| sslConfig.securityConfig | String | MySQL、PostgreSQL | SSL 安全模式。MySQL 取值:REQUIRED、PREFERRED;PostgreSQL 取值:Prefer、Require、Verify-CA、Verify-Full。 | PREFERRED |
| sslConfig.sslCipher | String | MySQL | SSL 加密套件。 | TLS_AES_256_GCM_SHA384 |
| sslConfig.sslCA | String | MySQL、SQLServer、PostgreSQL | CA 证书内容。 | -----BEGIN CERTIFICATE----- |
| sslConfig.sslCAFileName | String | MySQL、SQLServer、PostgreSQL | CA 证书文件名。 | ca.pem |
| sslConfig.sslClientCert | String | MySQL、PostgreSQL | 客户端证书内容。 | -----BEGIN CERTIFICATE----- |
| sslConfig.sslClientCertFileName | String | MySQL、PostgreSQL | 客户端证书文件名。 | client-cert.pem |
| sslConfig.sslClientKey | String | MySQL、PostgreSQL | 客户端私钥内容。 | -----BEGIN PRIVATE KEY----- |
| sslConfig.sslClientKeyFileName | String | MySQL、PostgreSQL | 客户端私钥文件名。 | client-key.pem |
| sslConfig.sslIndentify | Boolean | MySQL | 是否校验服务器身份。字段名请按接口使用 sslIndentify。 | false |
| sslConfig.hostNameInCertificate | String | SQLServer | 服务器证书中的主机名。 | db.example.com |
| sslConfig.trustServerCertificate | Boolean | SQLServer | 是否信任服务器证书。 | false |
MongoDB 数据源响应字段
当 data 数组中的对象为 MongoDB 数据源时,除通用字段外,还会返回以下 MongoDB 专属字段。
| 参数 | 类型 | 说明 | 示例 |
|---|---|---|---|
| deploymentType | String | MongoDB 部署类型。取值:standalone、replicaSet、shardedCluster。 | standalone |
| authDB | String | 认证数据库。 | admin |
| readPreference | String | 读取偏好。如果数据源未配置该参数,可能不返回或返回为空。 | primary |
| replicaSet | String | 副本集名称。如果数据源未配置该参数,可能不返回或返回为空。 | rs0 |
调用成功示例
{
"success": true,
"requestId": "Mi6y0FCN-BHEEaHAnCFFp9DFdAAk0OUZ",
"data": [{
"datasourceId": "ds-d92mr1g445le",
"orgId": "2697478995911717",
"name": "127.0.0.1",
"datasourceType": "MySQL",
"username": "root",
"host": "127.0.0.1",
"port": 3306,
"envId": "env-dev",
"regionId": "aliyun-cn-hangzhou",
"networkType": "Public",
"multiTag": "active",
"sslConfig": {
"securityConfig": "PREFERRED",
"sslIndentify": false
}
}],
"current": 1,
"pageSize": 10,
"total": 1
}
MongoDB 数据源返回示例:
{
"success": true,
"requestId": "Mi6y0FCN-BHEEaHAnCFFp9DFdAAk0OUZ",
"data": [{
"datasourceId": "ds-d92r4i7z1a90",
"orgId": "2056935997355584",
"name": "test-mongo-standalone-renamed",
"datasourceType": "MongoDB",
"username": "root",
"host": "192.168.1.10",
"port": 27017,
"envId": "env-dev",
"regionId": "aliyun-cn-hangzhou",
"networkType": "Public",
"deploymentType": "standalone",
"authDB": "admin",
"readPreference": "primary"
}],
"current": 1,
"pageSize": 10,
"total": 1
}