Oracle-11g-R2
NLS_LANG AL32UTF8/UTF8 用於 Oracle 數據庫
我最近使用本教程在 Ubuntu 上安裝了一個新的 Oracle 數據庫。
我有一個錯誤
oracle@ubuntu:/home/bruno$ echo $NLS_LANG /u01/app/oracle/product/11.2.0/xe/bin/nls_lang.sh oracle@ubuntu:/home/bruno$ /u01/app/oracle/product/11.2.0/xe/bin/nls_lang.sh AMERICAN_AMERICA.AL32UTF8 oracle@ubuntu:/home/bruno$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.2.0 Production on Thu Mar 17 11:00:45 2016 Copyright (c) 1982, 2011, Oracle. All rights reserved. ERROR: ORA-12705: Cannot access NLS data files or invalid environment specified Enter user-name:
經過搜尋,我找到了一個可能的解決方案:
oracle@ubuntu:/home/bruno$ export NLS_LANG=AMERICAN_AMERICA.UTF8 oracle@ubuntu:/home/bruno$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.2.0 Production on Thu Mar 17 11:03:15 2016 Copyright (c) 1982, 2011, Oracle. All rights reserved. Connected to: Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production SQL>
糾正此錯誤的最優雅方法是什麼?
回答
export NLS_LANG = $($ORACLE_HOME/bin/nls_lang.sh)
在原始教程中:
export NLS_LANG=`$ORACLE_HOME/bin/nls_lang.sh`
注意反引號。變數的值
NLS_LANG
應該是上述命令的輸出,而不是帶有絕對路徑的文件名。只需設置 NLS_LANG 的值,就像您已經做的那樣:
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8