简介
本文介绍MCP查数据库服务的搭建方法。
AI查数据,最基本的方法是上传知识库,但知识库召回不准确,而且如果数据有更新,要重新上传数据库,很不方便。
dbhub是一个开源的、可以访问多种数据库的MCP Server。官网地址:https://github.com/bytebase/dbhub
dbhub支持的数据库:PostgreSQL、MySQL、MariaDB、SQL Server、SQLite、Oracle。
本文的目标
搭建一个通过MCP直接访问数据库的服务,AI应用就可以直接去查数据库(类似于:自然文本语言转SQL查询语句)。
数据库:类型:mysql;地址:172.17.0.1:3306,数据库名:ai;账号密码:root/222333
脚本及配置
创建文件夹:
mkdir -p /work/ai/mcp
在此文件夹下创建docker-compose.yml文件,内容如下
services:
dbhub:
image: bytebase/dbhub-oracle-thick:0.4.5
container_name: dbhub_0.4.5
ports:
- "11000:8080"
command: ["--transport", "sse", "--port", "8080", "--dsn", "mysql://root:222333@172.17.0.1:3306/ai"]
运行docker compose
运行命令(/work/ai/mcp目录下):
docker compose up -d
结果
[+] Running 2/2 ✔ Network mcp_default Created 0.1s ✔ Container dbhub_0.4.5 Started 0.3s
查看运行结果
运行命令(/work/ai/mcp目录下):
docker compose ps
结果
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS dbhub_0.4.5 bytebase/dbhub-oracle-thick:0.4.5 "node dist/index.js …" dbhub About a minute ago Up About a minute 0.0.0.0:11000->8080/tcp, [::]:11000->8080/tcp

请先 !