ORDS_Metadata缺失且java -jar ords.war install advanced命令弃用的求助
解决ORDS元数据缺失与Schema启用问题
1. 安装ORDS元数据(替代弃用的advanced命令)
原java -jar ords.war install advanced已废弃,使用以下命令安装完整元数据组件:
java -jar ords.war install --metadata-only
执行时按提示输入数据库连接信息(主机、端口、PDB/SID)、ORDS_METADATA用户密码(不存在则自动创建)、ORDS_PUBLIC_USER密码(验证已存在的用户),需用DBA权限用户完成此操作。
2. 验证元数据安装结果
登录目标数据库,执行SQL检查:
SELECT owner, object_name, object_type FROM all_objects WHERE object_name LIKE 'ORDS_METADATA%';
返回结果包含ORDS_METADATA相关包、存储过程即表示安装成功。
3. 启用目标Schema并发布表的REST API
元数据就绪后,执行PL/SQL启用目标Schema:
BEGIN ORDS.ENABLE_SCHEMA( p_schema => '你的目标Schema名称', p_auto_rest_auth => FALSE -- 无需OAuth认证则设为FALSE,按需调整 ); END; /
接着发布指定表的REST访问权限:
BEGIN ORDS.ENABLE_OBJECT( p_schema => '你的目标Schema名称', p_object => '目标表名称', p_object_type => 'TABLE', p_auto_rest_auth => FALSE ); END; /
4. 测试REST API访问
启动ORDS服务后,通过以下格式的GET请求访问表数据:
http://<ORDS服务器地址>:<端口>/ords/<目标Schema名>/<目标表名>/
示例:若Schema为SCOTT、表为EMP,请求地址为http://localhost:8080/ords/scott/emp/,返回JSON格式的表内容。
额外注意
- 安装元数据后需重启ORDS服务,确保配置生效。
- 目标Schema需具备
CREATE PROCEDURE、CREATE VIEW权限,同时ORDS_METADATA用户需拥有该Schema的访问权限。
内容的提问来源于stack exchange,提问作者Support
相关产品推荐
相关产品推荐

