暂无图片
暂无图片
3
暂无图片
暂无图片
暂无图片

OceanBase 携手魔搭开启 MCP - AI 驱动自然语言对话“秒上手”

原创 shunwahⓂ️ 2025-09-07
338

AI 驱动数据库管理新范式:OceanBase 与 ModelScope 联手打造智能 Workshop,让数据库管理 “秒上手”

个人简介
作者: ShunWah
公众号: “顺华星辰运维栈”主理人。

持有认证: OceanBase OBCA/OBCP、MySQL OCP、OpenGauss、崖山 DBCA、亚信 AntDBCA、翰高 HDCA、GBase 8a | 8c | 8s、Galaxybase GBCA、Neo4j Graph Data Science Certification、NebulaGraph NGCI & NGCP、东方通 TongTech TCPE 等多项权威认证。
获奖经历: 在OceanBase&墨天轮征文大赛、OpenGauss、TiDB、YashanDB、Kingbase、KWDB 征文等赛事中多次斩获一、二、三等奖,原创技术文章常年被墨天轮、CSDN、ITPUB 等平台首页推荐。

  • 公众号:顺华星辰运维栈
  • CSDN: shunwahma
  • 墨天轮:shunwah
  • ITPUB: shunwah
  • IFClub:shunwah

生成手办图片 5.png

前言:

从 “敲命令” 到 “自然对话”,技术门槛被 AI 彻底打破

在人工智能迅速发展的今天,数据库管理是否还需要依赖复杂的 SQL 语句和命令行操作?OceanBase 与 ModelScope 共同给出了否定的答案。通过 MCP(Model Calling Protocol)技术,我们重新定义了开发者与数据库的交互方式——从传统的“输入指令”升级为更直观的“自然语言对话”。

这一创新让用户无需记忆复杂指令、无需编写脚本,只需用自然语言提出问题,即可完成 OceanBase 数据库集群的创建、运行、管理、诊断与数据分析的全流程操作。这正是我们打造“AI Workshop:OceanBase 全生命周期管理平台”的初衷。

本项目基于 ModelScope 创空间平台构建,融合大语言模型(LLM)与数据库工具链,实现了真正意义上的“对话即操作”。打开 ModelScope 创空间(https://www.modelscope.cn/studios),复制 OceanBase 官方创空间后,只需配置好 API_KEY、模型(我用的是 Qwen/Qwen3-235B-A22B-Instruct-2507)与调用地址,就能启动属于自己的 AI Workshop。无论您是数据库新手,还是资深 DBA,都能从中获得前所未有的高效体验。

比如创建集群时,我直接说 “用默认配置创建 OceanBase 集群”,AI 便自动调用 create_cluster 工具,59 秒后就返回了包含服务器配置、资源分配的详细结果;想建租户,一句 “创建默认配置的 OceanBase 租户”,create_tenant 工具在 41 秒内完成了租户的 CPU、内存等参数部署。

一、平台核心功能解析

1.1 MCP 服务器:三位一体的智能管理架构

本项目目前已集成三大核心工具:OBShell、OBServer 和 OBDiag,分别对应数据库集群的创建、运行和管理三个关键阶段。通过这些工具的协同工作,用户无需编写一行代码,仅需与 AI Agent 对话即可完成 OceanBase 数据库集群的全生命周期管理。

MCP 服务器管理界面

用户可在左侧工具栏灵活添加或移除 MCP 服务器,并查看各工具的支持情况。所有 MCP 服务及更多扩展功能均可在 OceanBase 官方 GitHub 仓库 中找到,欢迎开发者深入探索。

MCP 工具支持界面

1.1.1 OBShell MCP:智能集群管理核心

OBShell 显著提升了数据库管理效率,覆盖集群管理、租户管理、备份恢复、权限管理和监控维护等多方面功能。目前支持六大工具调用:

  • create_cluster:创建新的 OceanBase 集群,支持默认配置快速部署和自定义参数部署
  • create_tenant:创建新的 OceanBase 租户,支持快速配置和详细参数定制
  • get_all_obshell_sdk_methods:获取 OBShell 支持的所有方法
  • get_obshell_sdk_methods_description:通过方法名获取详细描述
  • call_obshell_sdk:调用 obshell 的 SDK 方法

OBShell 功能界面

1.1.2 OceanBase MCP:智能数据操作接口

通过 OceanBase MCP,Agent 可以实现对数据库数据的全面操作:

  • execute_sql:执行 SQL 语句,支持查询、表 Schema 获取、索引添加等操作

1.1.3 OBDiag MCP:智能诊断与巡检系统

OBDiag 为用户提供集群巡检、诊断和信息查询等高级功能:

  • obdiag_check_run:执行集群巡检并生成详细报告
  • obdiag_analyze_log:分析集群日志,识别错误信息
  • obdiag_display_list:查询支持的指令列表
  • obdiag_display_run:执行从 obdiag_display_list 获取的指令

二、 基于魔搭创空间搭建专属AI Workshop:手把手实战指南

本节将详细介绍如何在ModelScope创空间平台上快速搭建属于自己的AI驱动数据库管理环境。请按照以下步骤操作,即可体验自然语言与数据库交互的全新范式。

1. 准备工作与注意事项

在开始前请确保:

  • 使用Chrome等主流浏览器(避免Safari以免数据集上传异常)
  • 已完成魔搭账户注册
  • 如使用免费API,需提前绑定阿里云账户

2. 魔搭平台注册与登录

https://www.modelscope.cn/studios

访问ModelScope官网完成账户注册:
官网首页

支持多种注册方式,推荐使用CSDN账户快捷登录:
注册选项界面
CSDN注册入口

完成账户设置与别名绑定:
账户设置界面

成功登录后进入平台工作台:
平台工作台

提示:如操作过程中出现环境异常,请参阅附录"环境修复指南"进行重置

3. 创建专属AI Workshop空间

3.1 复制创空间模板

https://www.modelscope.cn/studios/OceanBase/Oceanbase-AI_Workshop-Public

进入OceanBase官方创空间页面,点击复制按钮创建个人空间:
官方创空间

3.2 关键配置项设置

基础信息配置

  • 英文名称:设置个性化标识名
    名称设置

  • 公开设置:选择"非公开"保护API资源
    隐私设置

  • 空间描述:建议使用欢迎性描述文案

欢迎来到 shunwah_AI_Workshop!围绕 OceanBase - AI_Workshop 复制而来,这里是技术交流的乐园。分享见解、探索应用场景,共同挖掘 OceanBase 与 AI 结合的巨大潜力,等你加入!

描述设置

环境变量配置

  • API_KEY获取
    访问https://modelscope.cn/my/myaccesstoken查看访问令牌
    API管理页面
    令牌详情

  • 模型配置

    LLM_MODEL = Qwen/Qwen3-235B-A22B-Instruct-2507 LLM_BASE_URL = https://api-inference.modelscope.cn/v1/

模型设置
API地址设置

3.3 完成创建与初始化

确认配置无误后点击"复制创空间"按钮:
创建确认

系统开始初始化环境(首次使用可能需要较长时间):
初始化过程

3.4 常见问题处理

阿里云账户绑定错误

openai.AuthenticationError: Error code: 401 - {'errors': {'message': 'Please bind your Alibaba Cloud account before use.'}}

绑定错误提示

错误:使用前需绑定阿里云账号
错误信息:openai.AuthenticationError: Error code: 401 - {‘errors’: {‘message’: ‘Please bind your Alibaba Cloud account before use.’, ‘request_id’: ‘26ef5034 - 4563 - 4014 - 95fa - 2c976641f6cc’}}
原因分析:这个错误是由 OpenAI 相关的库抛出的,尽管错误信息提到 OpenAI,但实际上提示需要在使用前绑定阿里云账号。这可能是因为所使用的功能依赖于阿里云的某些服务,而这些服务要求用户先绑定阿里云账号以进行身份验证和授权。

解决方案:完成阿里云账户绑定授权
账户绑定界面

扫码绑定
扫码绑定

第三方应用授权
授权确认

通过以上步骤,您已经成功在ModelScope平台上创建了专属的AI Workshop环境。关键要点包括:①使用非Safari浏览器确保功能完整;②正确配置API_KEY和模型参数;③注意阿里云账户绑定避免认证错误。现在您已经拥有了一个能够通过自然语言对话管理OceanBase数据库的AI驱动环境,接下来即可体验全生命周期的数据库智能管理功能。

三、 MCP 服务实战:从零开始部署与管理数据库集群

本节将详细介绍如何通过MCP服务完成OceanBase数据库集群的创建、租户管理、数据表构建及数据操作全流程,体验AI驱动的数据库智能管理。

3.1 创建OceanBase数据库集群

通过自然语言指令启动集群创建流程:
集群创建入口

3.1.1 常见问题排除:身份验证错误

在创建过程中可能遇到认证错误:

处理过程中发生错误: Error code: 401 - {'errors': {'message': 'Authentication failed, please make sure that a valid ModelScope token is supplied.', 'request_id': '033555f9-5f20-4d9d-9912-8283fc34a815'}}

认证错误提示

错误信息 :Error code: 401 - {‘errors’: {‘message’: ‘Authentication failed, please make sure that a valid ModelScope token is supplied.’, ‘request_id’: ‘033555f9 - 5f20 - 4d9d - 9912 - 8283fc34a815’}}
原因分析:该错误表明在使用与 ModelScope 相关的功能时,身份验证失败。系统提示需要提供有效的 ModelScope 令牌(token)。这通常意味着代码尝试访问 ModelScope 的资源,但没有提供正确的身份验证凭证,或者提供的凭证已过期或无效。
问题分析:此错误表明ModelScope令牌无效或已过期,导致身份验证失败。

解决方案

  1. 更新环境变量中的API_KEY
    更新环境变量
  2. 确认更新操作
    确认更新

3.1.2 成功创建集群

使用自然语言指令创建集群:
创建指令输入

具体操作步骤:

  1. 输入创建命令:
    命令输入界面
  2. 系统思考生成解决方案:
    系统思考过程
  3. 工具调用详情(耗时59.01秒):
    调用工具: create_cluster
    
    {
    "arguments":{
    "cluster_id":1
    "servers_with_configs":{
    "127.0.0.1:2886":{
    "zone":"zone1"
    "datafile_size":"8G"
    "cpu_count":"8"
    "memory_limit":"7G"
    "system_memory":"1G"
    "log_disk_size":"24G"
    "enable_syslog_recycle":"true"
    "enable_syslog_wf":"true"
    "__min_full_resource_pool_memory":"1073741824"
    }
    }
    }
    }
    
    工具调用详情
  4. 集群创建完成:
    创建完成确认

3.2 创建OceanBase租户

使用默认配置创建数据库租户(耗时41.12秒):

调用工具: create_tenant

{
"arguments":{
"zone_replica_type":{
"zone1":"FULL"
}
"memory_size":"2G"
"cpu_count":1
"unit_num":1
}
}

租户创建界面

验证数据库表创建情况:

调用工具: execute_sql

{
"arguments":{
"query":"SHOW TABLES"
}
}

表查询界面

3.3 创建数据表结构

3.3.1 测试数据准备

OceanBase论坛下载示例数据集:
论坛下载页面

下载测试数据文件(3.8 MB)到本地:
本地下载确认

3.3.2 使用自然语言创建数据表

基于示例数据格式,使用Prompt指导AI创建表结构:
数据示例
Prompt示例

输入建表指令:

根据示例数据调用工具在数据库中创建表(表名默认为transactions):
step,type,amount,nameOrig,oldbalanceOrg,newbalanceOrig,nameDest,oldbalanceDest,newbalanceDest,isFraud,isFlaggedFraud
1,PAYMENT,9839.64,C1231006815,170136.0,160296.36,M1979787155,0.0,0.0,0,0
1,PAYMENT,1864.28,C1666544295,21249.0,19384.72,M2044282225,0.0,0.0,0,0
1,TRANSFER,181.0,C1305486145,181.0,0.0,C553264065,0.0,0.0,1,0

系统执行SQL建表语句(耗时0.13秒):

调用工具: execute_sql

{
"arguments":{
"query":"CREATE TABLE transactions (step INT, type VARCHAR(255), amount DECIMAL(20,2), nameOrig VARCHAR(255), oldbalanceOrg DECIMAL(20,2), newbalanceOrig DECIMAL(20,2), nameDest VARCHAR(255), oldbalanceDest DECIMAL(20,2), newbalanceDest DECIMAL(20,2), isFraud INT, isFlaggedFraud INT)"
}
}

建表执行界面

3.4 数据导入操作

重要提示:确保数据库中已存在与CSV文件结构完全匹配的transactions表

表创建成功提示:
表创建成功

数据导入步骤:

  1. 通过左侧工具栏上传CSV文件:
    上传功能入口
  2. 数据导入过程:
    导入进行中
  3. 导入成功结果展示:
    导入完成

3.5 智能数据查询与分析

3.5.1 基础数据统计

查询数据总条数:
数据量查询
表transactions中共有138,115条数据

3.5.2 条件查询示例

金额范围筛选:
条件查询界面
数额在10000到20000之间的交易记录共有17,897条

3.5.3 SQL执行详情

调用工具: execute_sql(耗时0.00秒)

{
"arguments":{
"query":"SELECT COUNT(*) FROM transactions"
}
}

SQL执行结果

3.6 🧑‍💻 调用工具,生成shunwah_AI表打印用户:shunwah

调用工具,生成一张shunwah_AI表打印出来显示用户:shunwah,英文名称:shunwah_AI,中文名称:shunwah_AI_Workshop
通过本节的实践,我们成功完成了OceanBase数据库集群的全生命周期管理体验:
image.png

已成功创建表 shunwah_AI 并插入数据,当前表内容如下:

id name english_name chinese_name
1 shunwah shunwah_AI shunwah_AI_Workshop

如需进一步操作,请告知。

image.png

  1. 集群部署:通过自然语言指令成功创建OceanBase集群,掌握了认证错误的排查方法
  2. 租户管理:创建了独立的数据库租户,实现了资源隔离与管理
  3. 数据表构建:基于示例数据格式,使用AI智能生成并执行建表语句
  4. 数据操作:完成CSV数据导入和多种条件查询操作

这套AI驱动的数据库管理方案大幅降低了OceanBase的使用门槛,即使没有SQL背景的用户也能轻松完成专业的数据库操作。接下来可以进一步探索复杂查询、数据分析和性能优化等高级功能。

四、MCP 服务进行智能数据库诊断与优化

本节将展示如何利用 OBDiag MCP 服务对 OceanBase 数据库集群进行全面的健康检查、问题诊断和性能分析,体验 AI 驱动的智能运维能力。

4.1 添加 OBDiag MCP 服务

4.1.1 进入 MCP 服务配置界面

点击"MCP 服务设置"-“当前可用的 MCP Server”:
MCP服务设置入口

4.1.2 添加 OBDiag 服务

在左侧添加 OBDiag MCP 服务,扩展诊断能力:
添加OBDiag服务

4.2 集群全面巡检

4.2.1 执行集群健康检查

调用工具,使用 OBDiag 对集群进行全方位巡检:

巡检完成,以下是集群的主要问题摘要:

🔴 严重问题 (Critical)
1. glibc 版本过高 - 当前版本可能引起 observer 崩溃
2. 租户资源池配置不足 - tenant_id: 1, 1002 的资源配置低于推荐值 2C4G
3. 数据目录与日志目录在同一磁盘 - 存在性能和风险隐患
4. TCP 重传无法检测 - 缺少 tsar 工具,无法检查 TCP 重传情况
5. 统计信息收集异常 - 租户 1, 1001, 1002 的统计信息收集存在问题

🟡 警告问题 (Warning)
1. 磁盘使用率偏高:/ 和 /etc/eas 挂载点使用率达 83%
2. 内核参数配置不推荐:多个关键参数需要调整
3. Python 版本不兼容:当前为 3.11.11,需要 Python 2.7.x
4. 缺少关键工具:mtr, nc, nslookup 未安装
5. crond 未运行:影响定时任务和运维操作
6. core dump 配置不当:不利于故障排查

✅ 建议操作
1. 降级 glibc 或确认当前版本兼容性
2. 调整租户资源配置至 2C4G 以上
3. 将 data_dir 和 log_dir 分离到不同磁盘
4. 安装 tsar、nc、mtr 等工具
5. 调整内核参数以符合推荐值
6. 启用 crond 服务
7. 修改 kernel.core_pattern 以支持 core 文件生成

集群巡检结果

注意:当前创空间处于 Demo 阶段,如尝试让 Agent 自动修复巡检问题,可能会出现非预期行为,建议谨慎操作。

4.3 查看诊断分析场景

4.3.1 获取可用的分析功能

调用工具,查看 obdiag_display_list 支持的分析场景:
分析场景列表
详细功能列表

4.3.2 执行深度诊断分析

选择关键场景进行详细诊断,调用工具展示 observer.all_tenant 和 observer.serverinfo:
租户信息分析
服务器信息分析

4.4 完整诊断报告生成

基于深度诊断结果,系统生成全面的集群分析报告:

🏢 集群概览

  1. 集群基本信息:名称 cluster,ID 1,版本 4.3.5.3
  2. 服务器规模:1 台服务器(127.0.0.1),1 个 Zone(zone1)
  3. 租户配置:2 个租户(sys, tenant)

🖥️ 服务器详细信息

IP 角色 Zone 状态 启动时间
127.0.0.1 RootService zone1 ACTIVE 2025-09-02 10:16:32

🧱 租户与资源配置详情

租户名 类型 Unit 配置 CPU(分配/总量) 内存(分配/总量) 状态
sys 系统租户 2C1G 2.0 / 8.0 (25%) 1.0G / 6.0G (16.7%) NORMAL
tenant 用户租户 1C2G 1.0 / 8.0 (12.5%) 2.0G / 6.0G (33.3%) NORMAL

📊 资源使用情况分析

  1. CPU 使用率分布

    • sys:18%
    • META$1002:36%
    • tenant:37%
  2. 内存使用情况

    • sys:64.91%
    • META$1002:57.71%
    • tenant:65.36%

💾 数据存储分析

  1. 数据库容量:test 数据库总大小约 6.0 MB
  2. 表数据分布:transactions 表大小 6.0 MB,包含 138,115 条记录
  3. 数据结构健康度:各字段 NDV(唯一值数量)表现良好,适合索引优化

🌐 高可用性评估

  1. RootService 部署:单节点(127.0.0.1:2882:2881)
  2. Leader 分布:所有分区 Leader 集中在单节点,存在单点故障风险
  3. 服务状态:DDL 任务执行正常,无异常事件

⚠️ 关键问题总结

  1. 内存资源紧张:tenant 租户频繁触发内存不足错误
  2. 单节点风险:所有服务运行在单一节点,无高可用冗余
  3. RootService 单点:仅一个 RootService 节点,缺乏选举容错
  4. 工具版本过旧:obdiag 版本 3.5.0,需升级至 3.6.0

✅ 优化建议与行动计划

  1. 短期措施(1-2天)

    • 增加 tenant 租户内存配额
    • 监控内存使用趋势,设置预警阈值
  2. 中期规划(1-2周)

    • 引入第二个节点,实现多 Zone 部署
    • 升级 obdiag 到最新版本 3.6.0
  3. 长期优化(1个月以上)

    • 建立完整的监控告警体系
    • 制定定期健康检查流程
    • 规划集群扩展方案

通过本节的实践,我们完整体验了 OBDiag MCP 服务的强大诊断能力:

  1. 全面健康检查:一键式集群巡检,自动识别系统、配置、性能等多维度问题
  2. 智能根因分析:深度诊断功能快速定位问题根源,提供详细的技术洞察
  3. 可视化报告:自动生成结构化的诊断报告,清晰展示集群状态和风险点
  4. actionable 建议:不仅发现问题,更提供具体可行的优化方案和实施路径

这套AI驱动的诊断方案显著降低了数据库运维的技术门槛,使即使初级DBA也能完成专业级的集群健康管理和性能优化。


总结

通过本文的完整实践,我们深入体验了OceanBase与ModelScope联合打造的AI驱动数据库智能管理新范式:

(一)革命性突破

  1. 交互方式变革:从复杂的SQL和命令行操作转变为直观的自然语言对话
  2. 技术门槛降低:无需深厚的数据库专业知识,也能完成专业的集群管理和运维
  3. 效率极大提升:将传统耗时的部署、监控、诊断流程自动化、智能化

(二)核心价值体现

  1. 全生命周期管理:覆盖从集群创建、租户管理、数据操作到健康诊断的全流程
  2. 智能错误处理:内置的故障诊断和修复建议,大幅减少排查时间
  3. 可视化运维:丰富的图表和报告展示,使运维状态一目了然
  4. 持续学习进化:基于大量实践案例不断优化AI模型,提供越来越精准的建议

(三)未来展望

  1. 能力扩展:从当前的诊断能力向自动修复、智能调优、预测性维护方向发展
  2. 生态整合:与更多的运维工具和平台集成,形成完整的智能运维体系
  3. 行业应用:在金融、电信、政务等关键行业落地,推动数据库运维的智能化转型

OceanBase与ModelScope的这次合作,不仅展示了AI技术在数据库领域的创新应用,更为整个行业指明了未来发展方向——让技术更加人性化、智能化,真正实现"技术为人服务"的理念。

欢迎加入魔搭和OceanBase社区,共同探索AI与数据库结合的无限可能,携手推动数据库运维进入智能新时代!

作者注:本文所有测试基于 OceanBase (ModelScope MCP) AI Workshop 完成,具体语法请以OceanBase数据库和ModelScope 官方最新文档为准。

——以上仅为个人思考与建议,不代表行业普适观点。文中案例与思路仅供参考,若与实际情况巧合,纯属无意。期待与各位从业者共同探讨更多可能!

image.png

扫码关注我们【顺华星辰运维栈】了解更多信息

【告别SQL!用自然语言管理数据库的时代来了】OceanBase联合ModelScope推出AI智能管理新范式,只需“动动嘴”就能完成数据库集群创建、运维管理和诊断分析。无论你是技术小白还是资深DBA,都能享受“对话即操作”的革命性体验。点击了解如何用自然语言实现数据库全生命周期管理,开启高效运维新篇章!

点击链接,开启你的分布式数据库之旅👉
#OceanBase #数据库 #MCP #AI技术 #ModelScope

诚挚感谢 OceanBase 社区、魔搭 ModelScope 社区、老纪的技术唠嗑局。特别鸣谢Linux 基金会亚太地区布道师兼 OceanBase 社区布道师尹珉老师、OB 开源社区助手慧姐、兹拉坦等各位老师与社区伙伴的大力支持!正是有了你们的指导和帮助,本次文章才能顺利推出。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论