当前位置: 首页 > news >正文

MaxKB 使用 MCP 连接 Oracle (免安装 cx_Oracle 和 Oracle Instant Client)

一、背景

安装cx_Oracle包和Oracle Instant Client来操作数据库,比较繁琐同时容易冲突,不同的 Oracle 版本都需要安装不同的插件。这篇文章将介绍使用 MCP 协议的连接方法。

二、操作步骤

1、使用 1Panel 安装 DBhub

a) 数据库类型选择 Oracle 类型。

b)修改 compose 文件

注意:把默认的 dbhub 镜像改成 dbhub-oracle-thick

为什么要改?因为不修改安装会报错,如下:

查看 dbhub 的文档,找到对应的解决办法就是修改镜像。

c)安装完成之后查看日志,发现即使安装选择的 transport 是 sse,安装完之后仍然是 http 协议

尝试去修改 Command 发现改成 sse 不生效,猜测 dbhub-oracle-thick 不支持 sse 方式,为在 MaxKB 中配置 Streamable HTTP 调用方式埋下了伏笔。

2、MaxKB 对接 Oracle MCP

a、MCP 配置 transport 使用 streamable_http 模式。

{

  "mcp-oracle": {

    "url""http://10.1.12.115:8082/message",

    "transport""streamable_http"

    }

}


b、提示词参考

# 角色

你是一位专业的数据分析专家,精通oracle数据库SQL语言,能够熟练运用 mcp-oracle 工具执行execute_sql函数来进行SQL验证和查询,并且输出查询数据。

## 技能

### 技能1: 生成并验证SQL

1. 基于用户提出的问题,结合已知信息,生成SQL语句。

2. 使用 mcp-oracle 工具对每次生成的SQL进行验证和查询。若SQL出现错误,需尝试三次不同的SQL表述。

3. 记录每次SQL验证和查询的结果。

请生成标准的Oracle SQL语句(严格遵循以下规则):

1. **禁止使用任何分号`;`、中文或特殊符号**。

2. 表名/列名使用大写(例如:`EMPLOYEES`)。

3. 字符串值用单引号(例如:`WHERE name='John'`)。

4. 保留字必须用双引号包裹(例如:`SELECT "LEVEL" FROM ...`)。

5. 输出内容必须是单行纯文本(无换行符)。

#### 数据库架构说明

所有表均属于 **DCS** 模式,必须显式声明模式名前缀!

**禁止行为**:

   - 使用未列出的表或视图

   - 修改表名大小写(如`dcs.t_c_z_bu_daily_report`)

### 技能2: 根据SQL结果生成表格数据

1、请使用表格格式对sql查询结果进行输出。

2、结合表信息把英文字段替换成中文。

## 限制

- 仅围绕与生成SQL、利用工具查询验证相关的内容进行回答,拒绝回答不涉及这些内容的话题。

- 生成的SQL需符合oracle语法规范。

- 分析和解释部分应尽量简洁明了,突出重点。

- 操作过程严格按照上述技能要求执行,不得随意更改工具使用方式。 

三、效果展示

http://www.xdnf.cn/news/1251631.html

相关文章:

  • 【WAIC 2025】AI安全的攻防前线:合合信息AI鉴伪检测技术
  • kubeadm-k8s 中的 etcd 备份与恢复
  • Minio 高性能分布式对象存储
  • 部署 Zabbix 企业级分布式监控笔记
  • 消息队列的优缺点
  • ubuntu18.04在fstab文件中挂载硬盘失败,系统进入紧急模式的解决方法
  • Ubuntu设置
  • 分布式文件系统07-小文件系统的请求异步化高并发性能优化
  • TCP的拥塞控制
  • CSS :is () 与 :where ():简化复杂选择器的 “语法糖”
  • NodeJs学习日志(1):windows安装使用node.js 安装express,suquelize,sqlite,nodemon
  • 基于Hadoop的股票大数据分析可视化及多模型的股票预测研究与实现
  • 笔试——Day30
  • 如何快速掌握大数据技术?大四学生用Spark和Python构建直肠癌数据分析与可视化系统
  • 【数据结构与算法-Day 12】深入浅出栈:从“后进先出”原理到数组与链表双实现
  • 开疆智能ModbusTCP转Profinet网关连接EPSON机器人配置案例
  • Gitlab+Jenkins+K8S+Registry 建立 CI/CD 流水线
  • MATLAB深度学习之数据集-数据库构建方法详解
  • 无人机开发分享——基于行为树的无人机集群机载自主决策算法框架搭建及开发
  • 2025国赛数学建模C题详细思路模型代码获取,备战国赛算法解析——决策树
  • 信息安全概述
  • Dart中回调函数的简单实现
  • NY112NY117美光固态闪存NY119NY123
  • C++之vector类的代码及其逻辑详解 (下)
  • 【Excel】通过Index函数向下拖动单元格并【重复引用/循环引用】数据源
  • 【Linux】调试器gdb/cgdb的使用
  • 推荐一款优质的开源博客与内容管理系统
  • Android PDFBox 的使用指南
  • 【数据结构与算法】刷题篇——环形链表的约瑟夫问题
  • 8.6笔记