阿里云百炼智能体连接云数据库实践(DMS MCP)

这篇文章主要是通过使用阿里云的百炼智能体与阿里云的serverless来实现数据库的操作

欢迎一起交流!!

首先,当然是选择自己需要的数据库啦
在阿里云控制台选择产品 - > 数据库 - > 数据管理DMS进来的界面如下所示
第一次进来的时候是没有数据库的,需要你自己去创建,但是在这里是不能创建数据库的。接下来我们进入工作台 - > 数据库 RDS
进来之后点击创建实例
在这里有很多方案可以选择,因为主要演示如何链接,所有选择了按量计费的serverless
回到实例列表,点击你的实例名字
在这里可以看你数据库的基本信息,可以在这里设置你的数据库启动设置,比如是我这里就设置了弹性时间,在不用的时候会自动关闭数据库(省钱必备!!)再点击数据库管理


在数据库管理中点击创建数据库后会进入如下页面
注意关于这个数据库账号,建议创建一个新的账号,并且授予权限

####### 在DMS中心在实例列表中点击+号创建数据库

如何录入数据库可以看下面这篇文章

-----------------------------------------------------------------------------------------------------------分割线

恭喜你!

到这里就已经完成的数据库的准备工作

接下来打开百炼平台
应用管理 - > 创建应用,当然你可以直接选择在应用广场里面找到DMS Chat数据助手这个智能体,因为本片文章主要是如何连接数据库,所有我们直接复制DMS Chat数据助手智能体
复制之后如下图所示
在不进行配置的前提下,直接提问智能体,它会让你给出数据库的详细信息,如下所示(浪费你的tokens!!!)
在这里你就会发现好像配置不了你的信息,无论是在系统prompt中还是在用户prompt中加入数据库信息,都无法回答问题

所以接下来,我们就需要对MCP服务进行配置了!

重新写一个MCP?(那是不可能的!)

我们在页面中找到MCP
在MCP中找到DMS-数据库安全访问
一直往下翻找到官方给的MCP配置
MCP服务配置输入如下内容
复制代码
{
  "mcpServers": {
    "dms-mcp-server": {
      "command": "uvx",
      "args": [
        "alibabacloud-dms-mcp-server@latest"
      ],
      "env": {
        "ALIBABA_CLOUD_ACCESS_KEY_ID": "access_id",
        "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "access_key",
        "ALIBABA_CLOUD_SECURITY_TOKEN": "optional sts_security_token , required when using STS Token"
      }
    }
  }
} 

或者是

{​ 复制代码
  "mcpServers": {
    "dms-mcp-server": {
      "command": "uvx",
      "args": [
        "alibabacloud-dms-mcp-server@latest"
      ],
      "env": {
        "ALIBABA_CLOUD_ACCESS_KEY_ID": "access_id",
        "ALIBABA_CLOUD_ACCESS_KEY_SECRET": "access_key",
        "ALIBABA_CLOUD_SECURITY_TOKEN": "sts_security_token optional, required when using STS Token",
        "CONNECTION_STRING": "dbName@host:port"
      }
    }
  }
}
你会发现它需要用户的accesskey,这个如何找呢?
我们回到阿里云的控制台,点击右上角,找到accesskey
选择使用RAM用户



得到账号的AccessKey之后回到百炼平台
选择+号创建MCP
选择使用脚本部署
选择uvx进行部署,填写配置,配置中写入我们得到的AccessKey以及我们的数据库账号、名字以及端口号
部署成功之后就可以在我们的MCP管理中看到我们刚刚创建的服务
回到应用管理,找到我们创建的应用
提示词如下:
# 复制代码
你是一名数据库专家,专门负责在 `automobile_data` 数据库中执行 SQL 查询。你的工作基于已确认的 `databaseId`(通过 `searchDatabase` 获取)。

## 技能
### 技能 1:SQL 查询执行
- 根据提供的分析方案,调用 `generateSql` 生成 SQL 脚本。
- 使用 `executeScripts` 执行 SQL 查询。
- 如果查询出错,检查表结构和字段名,并自动修复错误(最多尝试 3 次)。

## 限制
- 所有查询必须基于已确认的 `databaseId`(通过 `searchDatabase` 获取)。
- 如果 SQL 查询出错,需检查表结构和字段名,并自动修复错误(最多尝试 3 次)。

```matlab
# 角色
你是一名数据库专家,专门负责在 `automobile_data` 数据库中执行 SQL 查询。你的工作基于已确认的 `databaseId`(通过 `searchDatabase` 获取)。

## 技能
### 技能 1:SQL 查询执行
- 根据提供的分析方案,调用 `generateSql` 生成 SQL 脚本。
- 使用 `executeScripts` 执行 SQL 查询。
- 如果查询出错,检查表结构和字段名,并自动修复错误(最多尝试 3 次)。

## 限制
- 所有查询必须基于已确认的 `databaseId`(通过 `searchDatabase` 获取)。
- 如果 SQL 查询出错,需检查表结构和字段名,并自动修复错误(最多尝试 3 次)。

选择刚刚创建的MCP服务

现在我们的数据库查询智能体已经完成了配置啦!接下来就可以随意操控数据库了!

写在最后

欢迎一起交流百炼智能体^^

相关推荐
我科绝伦(Huanhuan Zhou)12 分钟前
PostgreSQL 18 新特性解析(附一键安装脚本)
数据库·postgresql
大明者省14 分钟前
《青花》歌曲,使用3D表现出意境
人工智能
一朵小红花HH40 分钟前
SimpleBEV:改进的激光雷达-摄像头融合架构用于三维目标检测
论文阅读·人工智能·深度学习·目标检测·机器学习·计算机视觉·3d
Daitu_Adam40 分钟前
R语言——ggmap包可视化地图
人工智能·数据分析·r语言·数据可视化
weixin_3776348442 分钟前
【阿里DeepResearch】写作组件WebWeaver详解
人工智能
AndrewHZ43 分钟前
【AI算力系统设计分析】1000PetaOps 算力云计算系统设计方案(大模型训练推理专项版)
人工智能·深度学习·llm·云计算·模型部署·大模型推理·算力平台
AI_gurubar1 小时前
[NeurIPS‘25] AI infra / ML sys 论文(解析)合集
人工智能
胡耀超2 小时前
PaddleLabel百度飞桨Al Studio图像标注平台安装和使用指南(包冲突 using the ‘flask‘ extra、眼底医疗分割数据集演示)
人工智能·百度·开源·paddlepaddle·图像识别·图像标注·paddlelabel
聆思科技AI芯片2 小时前
【AI入门课程】2、AI 的载体 —— 智能硬件
人工智能·单片机·智能硬件
hong_zc2 小时前
redis之缓存
数据库·redis·缓存