让 AI 真正懂 Oracle:官方开源 Skill 仓库全面解读
893 个结构化文档,5 大产品域,18 个数据库分类——这不是一本手册,而是 Oracle 为 AI 时代准备的「知识芯片」。带你从 0 到 1 认识这个世界级的 AI 知识基础设施。
一、一个被忽视的瓶颈
2024 年以来,AI 编程助手的能力突飞猛进。Claude Code 可以写出完整的 Web 应用,Copilot 能几秒内生成单元测试,Hermes Agent 可以直接操作数据库。
但当你问它们 Oracle 数据库问题时:
“帮我分析一下这份 AWR 报告”
“这个 MySQL 建表语句怎么转成 Oracle 12c?”
“Data Guard 故障切换的完整步骤是什么?”
——模型的回答时准时错。这不是模型不够聪明,而是 Oracle 的 100 万页技术文档,从来就不是为 AI 设计的。
Oracle 看到了这个问题,给了一个务实的解法。
二、oracle/skills:写给 AI 读的技术文档
github.com/oracle/skills是 Oracle 官方在 GitHub 上维护的开源项目。
它不是一本 PDF 手册,而是一套为 AI Agent 设计的「技能包」——893 个 .md 文件,每个聚焦一个具体技术问题,给出权威的、结构化的、可操作的指导。
截止 2026 6月10日:665 Stars、172 Forks、UPL-1.0 开源许可证。
仓库全景
oracle/skills/
├── db/ ← Oracle 数据库(164 文件)
├── oci/ ← Oracle Cloud Infrastructure
├── fusion/ ← Oracle Fusion Applications
├── apex/ ← Oracle APEX 低代码平台(718 文件)
└── graal/ ← GraalVM 高性能运行时
五个域各司其职:
db/— 覆盖 Oracle 数据库的全生命周期:SQL 开发、PL/SQL 编程、性能调优、安全管理、迁移、运维。这是使用频率最高的域,也是本文接下来重点拆解的对象。oci/— Oracle Cloud Infrastructure 的 AI 知识库。虽然目前只有一个路由文件,但内容涵盖计算、网络、存储、IAM 等核心服务的 AI 辅助操作指南。fusion/— Oracle Fusion Applications(企业级 ERP/HCM/SCM 云套件)的 AI 技能。面向实施顾问和运维团队,提供配置、集成、扩展等场景的结构化指导。apex/— Oracle APEX 低代码平台的 AI 技能。718 个文件是五个域中最庞大的,覆盖组件开发、页面设计、数据建模、安全性、部署等 APEX 开发的全部环节。如果你在做 APEX 项目,这个域是金矿。graal/— GraalVM 的 Native Image 编译指南。面向 Java 开发者,提供 AOT 编译、反射配置、资源管理等方面的 AI 辅助。文件不多但极其聚焦。
三个关键认知
1. 不是微调,是 RAG。 oracle/skills 不涉及模型训练。它是外部知识源,AI 在需要时按需拉取。这有两个好处:内容可以随时更新,不依赖模型训练周期;每个回答都可以追溯到具体的源文件。
2. 不是替代官方文档,是它的「AI 优化版」。 官方文档追求全面,oracle/skills 追求精准——每个文件几百到几千字,聚焦一个任务,给出代码示例和决策标准。
3. 不是写给人读的,是写给 AI 读的。 文件结构高度标准化:场景描述 → RFC 规范(如果需要)→ 分步指导 → 示例代码 → 决策清单。AI 可以零理解成本地消费这些内容。
三、核心设计:路由索引
oracle/skills 最巧妙的设计,是它解决了「全面 vs Token 预算」的矛盾。
AI 的上下文是有限的,也是按 Token 计费的。 把 893 个文件全部注入,既不可能,也不划算。
两级路由:只加载你需要的
用户提问: "MySQL 的 BIGINT 怎么映射到 Oracle?"
↓
SKILL.md 路由表: "迁移任务 → db/migrations/"
↓
加载文件: migrate-mysql-to-oracle.md(仅 20KB)
↓
AI 回答: 基于官方映射表的权威答案
↑
其他 17 个分类完全不进上下文
整个流程中,AI 只加载了 2 个文件(路由表 + 目标文件),加起来不到 25KB。而得到的答案来自 Oracle 官方维护的类型映射表,不是模型的猜测。
效果:Token 消耗降低 90% 以上,准确率不降反升。
路由表长什么样
db/SKILL.md 只有约 4KB,本质是一张对照表:
| 你问什么 | 去读哪个目录 |
|---|---|
| 执行计划怎么分析? | db/performance/ |
| PL/SQL 包怎么设计? | db/plsql/ |
| MySQL 怎么迁 Oracle? | db/migrations/ |
| Data Guard 怎么配? | db/admin/ |
| SQL 注入怎么防? | db/sql-dev/ |
| AI 安全操作数据库? | db/agent/ |
三种典型路由路径
不同角色、不同场景,路由路径完全不同:
场景 A:DBA 排查性能问题
"昨晚数据库突然变慢,帮我看看 AWR 报告"
↓
路由到 db/admin/ 或 db/performance/
↓
加载 awr-reports.md、wait-events.md、top-sql.md
↓
AI 按优先级给出诊断步骤和优化建议
场景 B:Java 开发者集成 Oracle
"Spring Boot 项目怎么连接 Oracle 并配置连接池?"
↓
路由到 db/appdev/ 或 db/frameworks/
↓
加载 JDBC 配置指南、HikariCP 连接池最佳实践
↓
AI 给出可用的 application.yml 配置和注意事项
场景 C:架构师设计迁移方案
"从 SQL Server 迁到 Oracle,怎么评估工作量和风险?"
↓
路由到 db/migrations/
↓
加载 migration-assessment.md、migrate-sqlserver-to-oracle.md
↓
AI 给出分阶段的迁移计划、时间估算、风险清单
三种场景,加载的文件完全不同,但都走了同一套路由索引。这就是「按需加载」的核心价值——AI 不会被无关知识淹没,回答始终聚焦在你真正需要的问题上。
四、db 域全面拆解
db/ 是最常用的域,164 个文件分属 18 个分类。先一览全貌:
| 分类 | 用途 | 文件数 |
|---|---|---|
sql-dev/ |
SQL 调优、动态 SQL、注入防护 | 6 |
plsql/ |
包设计、游标、异常处理、性能 | 10 |
appdev/ |
JDBC、JSON、XML、全文检索 | 多 |
frameworks/ |
8 种主流框架的 Oracle 集成 | 多 |
performance/ |
AWR/ASH、执行计划、等待事件 | 7 |
admin/ |
Data Guard、redo/undo、用户管理 | 4 |
architecture/ |
RAC、Multitenant、Exadata、In-Memory | 6 |
monitoring/ |
Alert log、健康检查、空间管理 | 6 |
backup-recovery/ |
RMAN、自动恢复服务 | 多 |
migrations/ |
10 种源数据库→Oracle 迁移 | 14 |
agent/ |
AI Agent 安全操作数据库 | 8 |
design/ |
ERD、数据建模、分区、表空间 | 多 |
devops/ |
Schema 在线变更、版本控制 | 5 |
features/ |
AQ、调度、物化视图、向量搜索 | 多 |
ords/ |
ORDS REST 服务设计与部署 | 多 |
security/ |
权限、VPD、加密、审计 | 6 |
sqlcl/ |
SQLcl 脚本、Liquibase、MCP Server | 多 |
containers/ |
容器镜像与部署 | 多 |
下面按使用场景归为四组,逐个拆解。
组一:日常开发
| 分类 | 解决什么 | 代表性文件 |
|---|---|---|
sql-dev/ |
SQL 调优、动态 SQL、注入防护 | sql-tuning.md, sql-injection-avoidance.md |
plsql/ |
包设计、游标、异常处理、性能 | plsql-package-design.md, plsql-error-handling.md |
appdev/ |
JDBC、JSON、XML、全文检索 | 语言驱动、连接池、事务管理 |
frameworks/ |
8 种主流框架的 Oracle 集成 | SQLAlchemy, Django, Spring JPA, MyBatis |
算一笔账: 一个后端开发遇到 SQL 性能问题,传统路径是搜索 → 翻文档 → 翻博客 → 试错,至少 30 分钟。用 oracle/skills,AI 加载 sql-tuning.md(含完整诊断 Checklist),直接给出分步排查方案——5 分钟内定位问题。
组二:运维管理
| 分类 | 核心内容 |
|---|---|
performance/ |
AWR/ASH 报告、执行计划、等待事件、optimizer stats |
admin/ |
Data Guard、redo/undo、用户管理 |
architecture/ |
RAC、Multitenant、Exadata、In-Memory |
monitoring/ |
Alert log、健康检查、空间管理 |
backup-recovery/ |
RMAN、自动恢复服务 |
以 performance/awr-reports.md 为例: 一份 AWR 报告 60+ 个指标,新手面对它是「不知道先看哪个」。这份文件给出了「先看这 5 个关键指标」的优先级排序和正常范围:
| 指标 | 正常范围 | 超标排查 |
|---|---|---|
| DB Time / Elapsed | < 1 × CPU cores | 查 Top SQL、等待事件 |
| Buffer Cache Hit % | > 95% | 查执行计划、索引 |
| Hard Parse % | < 5% | 查绑定变量 |
| Log Switch Freq | < 3/hour | 增大 redo log |
组三:迁移
| 分类 | 解决什么 | 代表性文件 |
|---|---|---|
migrations/ |
10 种源数据库→Oracle 全链路迁移 | 14 个文件,覆盖评估、映射、转换、切流、校验 |
| 能力 | 覆盖范围 |
|---|---|
| 源数据库 | 10 种:MySQL、PostgreSQL、SQL Server、MongoDB、Snowflake、Redshift、DB2、Sybase、Teradata、SQLite |
| 类型映射 | 25+ 种数据类型,含精度对应 |
| 函数转换 | 24 个字符串函数 + 16 个日期函数 |
| 全链路 | 评估 → 映射 → 转换 → 切流 → 校验 |
核心文件一览:
| 文件 | 用途 |
|---|---|
migrate-mysql-to-oracle.md |
MySQL→Oracle 完整映射(最常用) |
migrate-postgres-to-oracle.md |
PostgreSQL 特殊类型转换 |
migrate-sqlserver-to-oracle.md |
T-SQL→PL/SQL 对照 |
migrate-mongodb-to-oracle.md |
文档模型→关系模型 |
migrate-snowflake-to-oracle.md |
分析函数迁移 |
migration-assessment.md |
迁移复杂度评估 |
migration-cutover-strategy.md |
切换策略与回滚方案 |
migration-data-validation.md |
数据校验方法 |
oracle-migration-tools.md |
Oracle 迁移工具链总览 |
每篇迁移文件的结构统一:类型对照表 → 函数对照 → DDL 示例 → 存储过程转换 → 数据迁移命令。AI 可以直接按这个骨架生成完整的迁移脚本。
我在一个 100 张表、约 6000 行的 MySQL→Oracle 12c 迁移项目中实测——传统方式 2~3 天,用 oracle/skills + 自建扫描脚本,5 分钟完成全量审查。
组四:AI Agent 安全
这是最独特的一个分类——它不是因为人类需要,而是因为「AI 要直接操作数据库了,得有规矩」。
| 分类 | 解决什么 | 代表性文件 |
|---|---|---|
agent/ |
AI Agent 安全操作数据库的行为规范 | 8 个文件,覆盖 DML 安全、DDL 防护、意图澄清 |
| 文件 | 用途 |
|---|---|
safe-dml-patterns.md |
UPDATE/DELETE 必须带 WHERE 条件,防止全表误操作 |
destructive-op-guards.md |
DROP TABLE、TRUNCATE 等危险操作需要二次确认 |
idempotency-patterns.md |
确保 AI 生成的 DDL 可重复执行不报错 |
schema-discovery.md |
AI 安全探索表结构,只读不写 |
nl-to-sql-patterns.md |
自然语言→SQL 的歧义消除和转换模式 |
intent-disambiguation.md |
用户意图模糊时 AI 应该如何澄清而非猜测 |
client-identification.md |
AI Agent 连接数据库时的身份标识与审计 |
ora-error-catalog.md |
常见 ORA- 错误码的快速诊断指南 |
这个分类的存在说明 Oracle 在认真考虑 AI 直接操作数据库的场景,并且不是等出问题再补丁,而是在设计阶段就预埋了安全护栏。
五、如何在你的 AI 工作流中接入
方式一:Hermes Agent(部分域支持,支持离线缓存)
Hermes Skills Hub 已将 oracle/skills 的 db 和 apex 两个域分别索引:
hermes skills install skills-sh/oracle/skills/db
hermes skills install skills-sh/oracle/skills/apex
安装后 db(164 文件)和 apex(718 文件)自动可用。常用文件可缓存到本地——断网也能用。
oci、fusion、graal三个域尚未被 Hub 索引,需用手动引用方式(下方方式二)。
参考文件来源于 Oracle 官方 GitHub 仓库 https://github.com/oracle/skills,可按需下载 db/migrations/、db/performance/、db/plsql/ 等子目录下任意文件:
mkdir -p ~/.hermes/skills/database/oracle-migration-review/references/
curl -o ~/.hermes/skills/database/oracle-migration-review/references/migrate-mysql-to-oracle.md \
https://raw.githubusercontent.com/oracle/skills/main/db/migrations/migrate-mysql-to-oracle.md
方式二:通用 AI 工具(Claude Code / Copilot / 任何 Agent)
把路由表粘贴到 AGENTS.md 或直接引用在线文件:
请阅读 https://raw.githubusercontent.com/oracle/skills/main/db/migrations/migrate-mysql-to-oracle.md
然后帮我把这段 MySQL DDL 转成 Oracle 12c
*📍 仓库:https://github.com/oracle/skills
📊 数据截至 2026-06-10:893 文档 · 665 Stars · 172 Forks · UPL-1.0 License
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)