Skip to content

ORA-06512: at “SYS.DBMS_PREUP” ,ORA-29284: file read error 报错 解决方法

4月初对某银行可以使用dbua升级时候遭遇ORA-06512错误,导致升级中断

主要是在 调用 preupgrade 脚本时,报如下错误:

trace.log_20220405. 描述如下:

SEVERE: Apr 04, 2022 3:25:09 AM oracle.assistants.dbua.prereq.PreUpgradeDriverJob call
SEVERE: ERROR – Unable to run the preupgrade due to:ERROR – Unable to run preupgrade due to:
ORA-06512: at “SYS.UTL_FILE”, line 106
ORA-06512: at “SYS.UTL_FILE”, line 746
ORA-06512: at “SYS.DBMS_PREUP”, line 3264
ORA-06512: at “SYS.DBMS_PREUP”, line 9736
ORA-06512: at line 8

declare
*
ERROR at line 1:
ORA-29284: file read error
ORA-06512: at line 56

经检查

 

环境变量 ORA_NLS10 指向 18C HOME 下面的 data, 如下

ORA_NLS10=/oracle/app/18.0.0/nls/data

并且设置了其他的 NLS 环境变量。

 

解决方案

1) 清理环境变量 ORA_NLS10 和 NLS 环境变量
unset ORA_NLS10
unset NLS_SORT
unset NLS_LANG
unset NLS_NUMERIC_CHARACTERS

2) 重新运行 DBUA 升级.