LANG=c 引发的 ORA-20001 问题

2050阅读 0评论2021-02-08 brjl
分类:Oracle


新装的库,启动时报错了
startup没问题,看了一眼alert.log,居然有错误:

2021-02-08T11:17:48.862582+08:00
Starting background process CJQ0
Completed: ALTER DATABASE OPEN
2021-02-08T11:17:48.883131+08:00
CJQ0 started with pid=46, OS id=15821 
2021-02-08T11:17:50.046058+08:00
QPI: opatch file present, opatch
QPI: qopiprep.bat file present
2021-02-08T11:17:55.073785+08:00
Unable to obtain current patch information due to error: 20001, ORA-20001: Latest xml inventory is not loaded into table
ORA-06512: at "SYS.DBMS_QOPATCH", line 2327
ORA-06512: at "SYS.DBMS_QOPATCH", line 854
ORA-06512: at "SYS.DBMS_QOPATCH", line 937
ORA-06510: PL/SQL: unhandled user-defined exception
ORA-06512: at "SYS.DBMS_QOPATCH", line 932
ORA-29913: error in executing ODCIEXTTABLEFETCH callout
ORA-29400: data cartridge error
KUP-04095: preprocessor command /home/ora/product/19.3.0/db_1/QOpatch/qopiprep.bat encountered error "locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Can"
ORA-06512: at "SYS.DBMS_QOPATCH", line 919
ORA-06512: at "SYS.DBMS_QOPATCH", line 2286
ORA-06512: at "SYS.DBMS_QOPATCH", line 817
ORA-06512: at "SYS.DBMS_QOPATCH", line 2309
这是什么?

一开始以为是业务用户有外部表没导入过来导致的,查了查数据库中没有LC_CTYPE这个对象。

提示的 
dbms_qopatch 看着跟oracle的补丁有关系,这套环境是模板克隆出来的,不应该有什么问题”,有的文章说是inventory需要重建,那就检查一下,试着执行了一下opatch lspatches 没报错,执行opatch lsinv 有些异常,连蒙带猜将LANG=C,然后重启库alert.log就不报错了。

这个模板上不知为何将LANG=c,其实如果linux知识比较全面的话,一眼就应该看明白问题所在了。


参考:
Queryable Patch Inventory - Issues/Solutions for ORA-20001: Latest xml inventory is not loaded into table (Doc ID 1602089.1)
https://www.cnblogs.com/badboy200800/p/11215981.html
上一篇:ORA-00600 [kfrValAcd30]
下一篇:需要恶补一下asm元数据知识