您好,登錄后才能下訂單哦!
這篇文章主要講解了“l(fā)inux oracle數(shù)據(jù)亂碼怎么解決”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“l(fā)inux oracle數(shù)據(jù)亂碼怎么解決”吧!
linux oracle數(shù)據(jù)亂碼的解決辦法:1、查看linux的默認(rèn)語言;2、查看客戶端的語言編碼設(shè)置;3、修改linux oracle數(shù)據(jù)庫的默認(rèn)語言為UTF8即可。
本文操作環(huán)境:linux5.9.8系統(tǒng)、Oracle Database 20c、Dell G3電腦。
linux oracle數(shù)據(jù)亂碼怎么辦?
Linux oracle中文亂碼的問題解決
亂碼問題的根源是字符集的修改
1.查看linux的默認(rèn)語言
2.查看客戶端的語言編碼設(shè)置
配置文件中的配置: cat ~/.bash_profile
注意修改配置信息:
export PATH export ORACLE_HOME=/usr/lib/oracle/11.2/client64/ export LD_LIBRARY_PATH=:$ORACLE_HOME/lib:/usr/local/lib:$LD_LIBRARY_PATH:. export TNS_ADMIN=$ORACLE_HOME export PATH=$PATH:$ORACLE_HOME/bin: export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
配置好后,查看配置是否成功,sql語句:select userenv('language') from dual
3.查看數(shù)據(jù)庫使用的編碼:修改linux oracle數(shù)據(jù)庫的默認(rèn)語言
linux 安裝oracle默認(rèn)語言為:
AMERICAN_AMERICA.WE8MSWIN1252
此語言中文展示位亂碼。
通過oracle登錄linux系統(tǒng)后進(jìn)行如下操作:
修改方法(以改成UTF8為例)
以系統(tǒng)DBA權(quán)限登錄sqlplus
$ sqlplus / as sysdba; select userenv('language') from dual;
例如:AMERICAN_AMERICA.WE8MSWIN1252
修改:
SQL> shutdown immediate; SQL> startup mount; SQL> alter system enable restricted session; SQL> alter system set job_queue_processes=0; SQL> alter database open; SQL> alter database character set internal_use AL32UTF8; 或者 ALTER DATABASE character set INTERNAL_USE ZHS16GBK; SQL> shutdown immediate; SQL> startup SQL>alter system disable restricted session;
4.修改后數(shù)據(jù)庫中原有的數(shù)據(jù)可能會出現(xiàn)錯誤,需要重新刪除表好重新導(dǎo)入數(shù)據(jù)。
感謝各位的閱讀,以上就是“l(fā)inux oracle數(shù)據(jù)亂碼怎么解決”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對linux oracle數(shù)據(jù)亂碼怎么解決這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。