問題:在客戶端用SQL Developer, SQL Plus都正常,但是在Linux服務器上中文就是顯示亂碼。數據正常,腳本和代碼中有中文的都不正常。
方案:
- 查詢數據庫的語言:select userenv('language') from dual
- 查看當前用戶的語言echo $NLS_LANG (或者 echo $LANG,這個會影響當前用戶的所有應用的語言)
- 設置.profile或者.bash_profile加上export NLS_Lang=<第一步的結果>
- source .profile讓配置立即生效
- 再次查看環境變量NLS_LANG,應該已經改變了。