Oracle MCP本地部署测试

发布于:2025-07-27 ⋅ 阅读:(14) ⋅ 点赞:(0)

中国区ACE群中看到了这个

image.png

很快有人写出了中文版教程

  • 这里感谢葛云杰和刘鹏程两位指出我的疑惑
  • 我基于之前的教程还是踩坑了,这里写一下(毕竟每个人还是环境不一样)

下载路径(中文)

  • https://www.oracle.com/cn/database/sqldeveloper/technologies/sqlcl/download/

  • 界面如下

    image.png

  • 当然要求要安装JDK8.我看了我是23,应该满足了。
    [oracle@oracle19ocp ~]$ java --version
    java 23.0.1 2024-10-15
    Java™ SE Runtime Environment (build 23.0.1+11-39)
    Java HotSpot™ 64-Bit Server VM (build 23.0.1+11-39, mixed mode, sharing)

其实重点这里是不对的。因为不是要求服务端,而是要求客户端。

  • 可能有朋友的笔记本是MAC的,让人误以为这个是在数据库服务端。其实如果是windows就知道了,这个所有操作全在windows上做。

  • 当然服务端上做了一下,也不会影响什么
    /u01/app/oracle/product/19.3.0/db_1/bin/sqlcl/bin/sql xxg/xxg@xxg

Warning: ORACLE_HOME must be database version 23 or later
or must be a 23c compatible instant client
Thick driver unavailable for use.

SQLcl: Release 25.2 Production on Fri Jul 25 09:08:58 2025

Copyright © 1982, 2025, Oracle. All rights reserved.

Last Successful login time: Fri Jul 25 2025 09:09:01 +08:00

已连接到:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

XXG@xxg>
XXG@xxg> conn -save mcptest -savepwd xxg/xxg@xxg
Name: mcptest
Connect String: xxg
User: xxg
Password: ******
已连接.
XXG@xxg>

还是到windows上安装最新的JDK

这个需要Vscode这个开发工具来实现。没有的话自行安装vscode

Vscode的扩展插件中扎到Cline进行安装。

image.png

这里还有中文的,可以选择中文的Cline

image.png

安装完成以后点击这个最下面的图标,

image.png

  • 这里要获得API,有很多平台的。我这里选择的是deepseek的。
  • 而这个API Key要去deepseek上申请。
  • 申请地址是https://platform.deepseek.com/api_keys

申请是免费的(我只说申请免费,其他我没说啊)

image.png

然后就获得了这个key,复制过去。到Vscode中

image.png

image.png

点击下图红框,开始配置MCP

image.png

image.png

配置过程主要是配置路径,确保无误,先执行一下解压的文件(就是文章中一开始让你下载,我放到服务端放错的哪个)windows下用sql.exe。非windows平台用另外一个sql

C:\Users\user>D:\instantclient_23_5\sqlcl\bin\sql.exe xxg/xxg@10.60.143.28/xxg
WARNING: A restricted method in java.lang.System has been called
WARNING: java.lang.System::load has been called by org.fusesource.jansi.internal.JansiLoader in an unnamed module (file:/D:/instantclient_23_5/sqlcl/lib/jansi.jar)
WARNING: Use --enable-native-access=ALL-UNNAMED to avoid a warning for callers in this module
WARNING: Restricted methods will be blocked in a future release unless native access is enabled

SQLcl: 鍙戣鐗?25.2 Production, 鍙戣鏃ユ湡 鍛ㄤ簲 7鏈?25 10:28:02 2025
鐗堟潈鎵€鏈?© 1982, 2025, Oracle銆備繚鐣欐墍鏈夋潈鍒┿€?
€?
Last Successful login time: 鏄熸湡浜?7鏈? 25 2025 10:28:06 +08:00

宸茶繛鎺ュ埌:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0

尽管乱码,但是说明路径没有问题。(但是这其实是一个隐藏问题)

配置的格式这样
{
“mcpServers”: {
“SQLcl”: {
“command”: “D:/instantclient_23_5/sqlcl/bin/sql.exe”,
“args”: [
“-mcp”,
“xxg/xxg@10.60.143.28/xxg”
],
“disabled”: false,
“timeout”: 300
}
}
}

对比一下其实就是/ 和 \ 的区别。在cmd中能执行的,在配置中不可以。这是一个注意点

  • 输入自己的绝对路径和数据库连接字符串替换以后,点击关闭保存。

再次点击下图红框看到这样就好了

image.png

开始提问

  • 查看当前数据库连接,查询有哪些表?
  • 这里出现两个问题(需要注意的)
  • 我们的deepseek API没有交钱,是不能用的,不能用的,不能用的。(我怎么知道的?我是一直不行,问别人才知道的。这个还要钱)
  • 即使换了一个付费的,第一次连接就是不成功的。要第二次才行。(我怎么知道的?我是一直不行,问别人才知道的。这个还要钱)

最后我成功的图就是下面的

image.png

image.png


网站公告

今日签到

点亮在社区的每一天
去签到