OWB11gR1升级11gR2时仓库创建失败,Repository Assistant执行64%报错
OWB 11gR1升级至11gR2仓库创建64%失败解决方案
问题现象
OWB从11gR1(11.1.0.7)升级至11gR2(11.2.0.4)过程中,在目标版本新建工作空间时,执行仓库创建操作的Repository Assistant进度到64%后运行失败,错误日志如下:
main.TaskScheduler timer[5]20200714@08:45:58.058: 00> oracle.wh.service.impl.assistant.ProcessEngine.display(ProcessEngine.java:2122): % = 0.8051529790660225 main.TaskScheduler timer[5]20200714@08:45:58.058: 00> oracle.wh.service.impl.assistant.ProcessEngine.display(ProcessEngine.java:2122): -token name = LOADJAVA; -token type = 13 main.TaskScheduler timer[5]20200714@08:45:58.058: 00> oracle.wh.service.impl.assistant.ProcessEngine.display(ProcessEngine.java:2122): ProcessEngine.token_db_min_ver = main.TaskScheduler timer[5]20200714@08:45:58.058: 00> oracle.wh.service.impl.assistant.ProcessEngine.display(ProcessEngine.java:2122): Before processing LOADJAVA Token main.TaskScheduler timer[5]20200714@08:45:58.058: 00> oracle.wh.service.impl.assistant.ProcessEngine.display(ProcessEngine.java:2122): ... I am in processLoadJavaToken ... main.AWT-EventQueue-0[6]20200714@08:48:36.036: 00> oracle.wh.ui.jcommon.WhButton@424c414: WhButton setLabel rtsString = Yes main.AWT-EventQueue-0[6]20200714@08:48:36.036: 00> oracle.wh.ui.jcommon.WhButton@424c414: WhButton setLabel rtsString = No
已安装数据库补丁列表
Patch 17906774: applied on Wed Aug 04 11:21:52 BDT 2021 Unique Patch ID: 17692968 Created on 14 May 2014, 22:56:54 hrs PST8PDT Bugs fixed: 17607032, 17974168, 17669786, 17561509, 16885825, 18274560, 17613052 17461930, 16829998, 17251918, 17435868, 17279666, 17328020, 17006987 18260620, 16833468, 18180599, 17292119, 17340242, 17296559, 15990966 17438322, 17939651, 17359696, 18385759, 17820353, 17939225, 17715818 18192446, 16960088, 17191248, 17422695 Patch 31668908 : applied on Mon Jul 12 16:13:02 BDT 2021 Unique Patch ID: 23822194 Patch description: "OJVM PATCH SET UPDATE 11.2.0.4.201020" Created on 18 Sep 2020, 03:30:45 hrs PST8PDT Bugs fixed: 23727132, 19554117, 19006757, 14774730, 18933818, 18458318, 18166577 19231857, 19153980, 19058059, 19007266, 17285560, 17201047, 17056813 19223010, 19852360, 19909862, 19895326, 19374518, 20408829, 21047766 21566944, 19176885, 17804361, 17528315, 21811517, 22253904, 19187988 21911849, 22118835, 22670385, 23265914, 22675136, 24448240, 25067795 24534298, 25076732, 25494379, 26023002, 19699946, 26637592, 27000663 25649873, 27461842, 27952577, 27642235, 28502128, 28915933, 29254615 29774367, 29992392, 29448234, 30160639, 30534664, 30855121, 31306274 30772207, 31476032, 30561292, 28394726, 26716835, 24817447, 23082876 31668867 Patch 31537677 : applied on Thu Jul 08 11:53:10 BDT 2021 Unique Patch ID: 23852314 Patch description: "Database Patch Set Update : 11.2.0.4.201020 (31537677)"
根因分析
日志终止在LOADJAVA令牌处理阶段,问题出在OWB向数据库加载Java组件的步骤。你环境中安装的11.2.0.4.201020版本OJVM PSU(补丁31668908)升级了Java权限控制逻辑,和OWB 11gR2默认的loadjava执行逻辑存在兼容冲突,OWB仓库用户缺少执行Java类加载的必要权限,导致进程终止。
修复步骤
- 先停止所有OWB相关服务,清理创建失败的仓库用户及关联的所有OWB schema对象,避免残留数据影响后续操作
- 以sysdba身份登录数据库,执行以下命令为计划使用的OWB仓库用户授予Java加载相关权限:
grant javasyspriv to <替换为实际OWB仓库用户名>; grant javauserpriv to <替换为实际OWB仓库用户名>; grant execute on dbms_java to <替换为实际OWB仓库用户名>; exec dbms_java.grant_permission( '<替换为实际OWB仓库用户名>', 'SYS:java.io.FilePermission', '*', 'read,write,execute,delete' );
- 重新运行Repository Assistant创建仓库,如果仍报错,临时关闭Java JIT参数后重启数据库再重试:
alter system set java_jit_enabled=false scope=spfile; shutdown immediate; startup;
- 仓库创建完成后可将
java_jit_enabled参数改回原值,按需回收临时授予的额外权限以规避安全风险。
内容的提问来源于stack exchange,提问作者Reja
相关产品推荐
相关产品推荐

