Skip to the content.

支持的数据库

ADB-Link 通过统一接口支持 13 种数据库引擎。每种引擎使用方言层进行 DSN 构建和 Schema 自省。

概览

数据库 类型标识 SQL 非 SQL 客户端 备注
MySQL mysql 完整 Schema 自省
PostgreSQL postgresql 完整 Schema 自省
SQLite sqlite 文件型,零配置
ClickHouse clickhouse 列式分析引擎
SQL Server mssql Microsoft SQL Server
Hive hive Apache Hive / HiveServer2
Oracle oracle Oracle Database
GaussDB gaussdb 华为 GaussDB
TiDB tidb MySQL 兼容,分布式
Redis redis 自定义 键值命令
MongoDB mongodb 自定义 文档查询
Milvus milvus 自定义 向量数据库
Elasticsearch elasticsearch 自定义 搜索和分析

SQL 数据库

MySQL

kind: datasource
name: my-mysql
type: mysql
connection:
  host: 127.0.0.1
  port: 3306
  username: root
  password: ${MYSQL_PASSWORD}
  default_database: mydb

PostgreSQL

kind: datasource
name: my-postgres
type: postgresql
connection:
  host: 127.0.0.1
  port: 5432
  username: postgres
  password: ${PG_PASSWORD}
  default_database: mydb

SQLite

kind: datasource
name: local-db
type: sqlite
connection:
  dsn: "/path/to/database.db"

无外部依赖,使用纯 Go SQLite 驱动(modernc.org/sqlite)。

ClickHouse

kind: datasource
name: my-clickhouse
type: clickhouse
connection:
  host: 127.0.0.1
  port: 9000
  username: default
  password: ${CH_PASSWORD}
  default_database: default

SQL Server (MSSQL)

kind: datasource
name: my-mssql
type: mssql
connection:
  host: 127.0.0.1
  port: 1433
  username: sa
  password: ${MSSQL_PASSWORD}
  default_database: master

Hive

kind: datasource
name: my-hive
type: hive
connection:
  host: 127.0.0.1
  port: 10000
  username: hive
  default_database: default

Oracle

kind: datasource
name: my-oracle
type: oracle
connection:
  host: 127.0.0.1
  port: 1521
  username: system
  password: ${ORACLE_PASSWORD}
  default_database: ORCL

GaussDB

kind: datasource
name: my-gaussdb
type: gaussdb
connection:
  host: 127.0.0.1
  port: 5432
  username: gaussdb
  password: ${GAUSS_PASSWORD}
  default_database: postgres

TiDB

kind: datasource
name: my-tidb
type: tidb
connection:
  host: 127.0.0.1
  port: 4000
  username: root
  password: ${TIDB_PASSWORD}
  default_database: test

TiDB 使用 MySQL 兼容方言。


非 SQL 数据库

Redis

kind: datasource
name: my-redis
type: redis
connection:
  host: 127.0.0.1
  port: 6379
  password: ${REDIS_PASSWORD}
  default_database: "0"

通过 execute_query 工具使用 Redis 命令语法执行操作。

MongoDB

kind: datasource
name: my-mongo
type: mongodb
connection:
  host: 127.0.0.1
  port: 27017
  username: admin
  password: ${MONGO_PASSWORD}
  default_database: mydb

MongoDB 通过 execute_query 工具使用 JSON DSL 语法查询。

Milvus

kind: datasource
name: my-milvus
type: milvus
connection:
  host: 127.0.0.1
  port: 19530
  default_database: default

Milvus 向量数据库,用于相似度搜索操作。

Elasticsearch

kind: datasource
name: my-es
type: elasticsearch
connection:
  host: 127.0.0.1
  port: 9200
  username: elastic
  password: ${ES_PASSWORD}

Elasticsearch 使用 JSON DSL 语法查询。


Schema 发现

所有数据库通过统一接口支持 Schema 发现:

方言层负责将数据库特定的元数据查询转换为统一的响应格式。


连接选项

所有 SQL 数据库通用选项:

选项 说明 默认值
pool_size 最大打开连接数 10
max_idle 最大空闲连接数 5
max_lifetime 连接最大生存时间 1h

连接健康通过定期 Ping 检查自动监控。