惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

D
DataBreaches.Net
罗磊的独立博客
M
MIT News - Artificial intelligence
G
Google Developers Blog
V
V2EX
D
Docker
博客园_首页
The Cloudflare Blog
人人都是产品经理
人人都是产品经理
Y
Y Combinator Blog
WordPress大学
WordPress大学
T
Tailwind CSS Blog
博客园 - 司徒正美
J
Java Code Geeks
L
LangChain Blog
博客园 - 三生石上(FineUI控件)
B
Blog RSS Feed
博客园 - 【当耐特】
小众软件
小众软件
Apple Machine Learning Research
Apple Machine Learning Research
大猫的无限游戏
大猫的无限游戏
P
Proofpoint News Feed
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
博客园 - Franky

博客园 - AlfredZhao

sed 一条命令批量替换 SQL 文件路径 执行新项目 python 脚本前,先用 conda 建一个独立环境 Git 提交代码:从报错到 SSH 免密推送 GitHub 克隆他人私有仓库:从授权到下载 理解Oracle Property Graph:以账户转账示例完成图特性最小测试 APEX 无法分配 SH 用户?一个存储过程轻松解决 SH 中文化样例数据使用手册 Oracle 排除非业务表:一份能直接抄的“全量过滤”SQL 进程都杀了,为什么 `netstat` 还能看到端口? MAC 空间告急?Codex 的 156GB 缓存垃圾,这样清! 人工清理问题数据:先查准,再删除 TK(Trusted Knowledge)为何而生? 使用快捷键快速切换 Mac 外接显示器模式 客户环境 Nginx 配置:流式报表与超时排查要点 Security Central:数据库安全的统一控制与运营平台 Palantir 眼中的一次“订单可能延期”,如何成为实时决策的起点? 从一条订单消息到 Bronze、Silver、Gold:我的第一次 Kafka + Lakehouse 实验 UUID v4 与 v7:同样是唯一 ID,为什么数据库表现可能完全不同? 用 crontab 给 LLM 使用量装上“监控眼” DeepSeek 与 GPT API 价格调整:该关注什么? 查看 Oracle 数据库中的定时任务执行情况 Codex 专用用户登录后自动进入默认项目目录 Mac 小技巧:用方向键优雅处理超长网址 Oracle GDD 与 Raft:别把共识机制和数据主权混为一谈 在 Oracle APEX 中用 BGE_BASE 生成向量:从模型导入到历史数据更新 行业人+AI:真正有价值的四个关键要素 知识库文件解析失败:一次由 Domain Index 引发的定位记录 Unicode 码位数、UTF-8 字节数、中英文差异和 Oracle 长度别再混淆了 Skill 的使用:从路径到能力边界 切换 Embedding 模型时,千万别忽略历史向量维度
SQL Developer Web(Database Actions)登录问题排障指南
AlfredZhao · 2026-08-14 · via 博客园 - AlfredZhao

2026-08-14 07:34  AlfredZhao  阅读(0)  评论()    收藏  举报

进入 ORDS 的 SQL Developer Web 后,登录却提示“身份证明无效”?数据库账号明明是 OPEN,怎么回事?

其实关键通常不在账号状态,而在该 Schema 是否已启用 ORDS,以及登录路径是否正确。

Oracle Database Actions - portal.png

01 | APEX 与 SQL Developer Web 不是同一种登录

Oracle APEX 面向业务应用构建,常用 Workspace 用户、SSO 或应用用户登录;SQL Developer Web(Database Actions)则面向数据库开发、对象管理、脚本、数据加载与 REST API 管理,必须使用数据库 Schema 用户和密码。

因此,SQL Developer Web 不应使用 APEX Workspace 用户,也不要使用 APEX_PUBLIC_USERORDS_PUBLIC_USER 等内部技术账号。

sql-developer-web-error.png

正确填写方式是:

高级 → 路径:Schema Alias
用户名:数据库 Schema 名
密码:该 Schema 的数据库密码

02 | 先确认 Schema 是否已启用 ORDS

请使用目标 Schema 自己的数据库连接执行:

SELECT id, parsing_schema, type, pattern, status
FROM user_ords_schemas;

例如:

PARSING_SCHEMA TYPE PATTERN STATUS
-------------- --------- ---------- -------
DEV_ALFRED BASE_PATH ws_alfred ENABLED

对应的 SQL Developer Web 登录信息应为:

路径:ws_alfred
用户名:DEV_ALFRED
密码:DEV_ALFRED 的数据库密码

USER_ORDS_SCHEMAS 只展示当前登录用户的 ORDS 信息,并非 DBA 专用视图。重点确认 STATUSENABLED,并将 PATTERN 原样填入“高级 → 路径”。

03 | 两种注册方式,维护的是同一份元数据

APEX 的 SQL Workshop → RESTful Services → Register / De-register Schema from ORDS,与调用 ORDS.ENABLE_SCHEMA 操作的是同一份 ORDS Metadata。

APEX RESTful Services 图形界面 ─┐
 ├─> ORDS Metadata
ORDS.ENABLE_SCHEMA / DROP... ───┘
 ├─> SQL Developer Web 路由
 └─> ORDS REST API URL

手工注册后会显示在 APEX 页面;在 APEX 页面取消注册,SQL 中的注册记录也会消失。

image.png

已关联 APEX Workspace 的 Schema,笔者建议优先在 APEX 页面注册和维护 Alias,以减少 APEX Path Prefix 与 ORDS Alias 不一致导致 REST 服务 404 的风险。

04 | 启用、停用与重新注册

DBA 为指定 Schema 首次启用:

BEGIN
 ORDS.ENABLE_SCHEMA(
 p_enabled => TRUE,
 p_schema => 'DEV_ALFRED',
 p_url_mapping_type => 'BASE_PATH',
 p_url_mapping_pattern => 'dev_alfred',
 p_auto_rest_auth => TRUE
 );
 COMMIT;
END;
/

普通 Schema 用户只能启用自己,连接后先确认:

SELECT USER FROM dual;

再执行不含 p_schemaORDS.ENABLE_SCHEMA

停用使用 p_enabled => FALSE,记录仍会保留,但状态变为 DISABLED。如需彻底重新注册,可执行:

BEGIN
 ORDS.DROP_REST_FOR_SCHEMA;
 COMMIT;
END;
/

这会永久删除该 Schema 的 ORDS 元数据、REST 模块、Handler、AutoREST 与权限配置,但不会删除数据库用户、表、PL/SQL 对象或 APEX 应用。生产环境需先确认 API 依赖并导出配置。

05 | 最简排障顺序

  1. 使用数据库 Schema 用户和密码。
  2. 以该 Schema 查询 USER_ORDS_SCHEMAS
  3. 确认状态为 ENABLED
  4. PATTERN 原样填入“高级 → 路径”。
  5. 无记录时,通过 APEX 页面注册或执行 ORDS.ENABLE_SCHEMA
  6. 信息均正确仍失败时,核对 ORDS 实际连接的 PDB 或连接池。

Oracle Database Actions.png

SQL Developer Web 登录成功的核心是:正确的数据库账号、已启用的 ORDS Schema,以及与 USER_ORDS_SCHEMAS.PATTERN 一致的路径。

关注我,和AI一起成长~