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
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 升级.