본문 바로가기

IT/oracle db

sqlplus 에서 한글이 깨질때

반응형

centos7, oracle12c 설치완료!

 

환경에서, sqlplus 접속후, 오라클을 시작할때마다 한글이 깨졌다...

 

이유는 shell 의 한글설정과 sqlplus 의 설정이 안맞아서 인듯..

 

그래서 오라클의 NLS_LANG 설정을 UTF8로 바꾸어주니 해결됨..

 

참고::  http://egloos.zum.com/sstories/v/9584689

 

 

요약--

export NLS_LANG=KOREAN_KOREA.AL32UTF8

 

쉘의 시작설정에 위의 값을 넣어준다.

 

시작설정??

/etc/profile
/home/(user_id)/.bash_profile

 

 

의 마지막에 추가!

 

그리고, 혹시 db 설정도 고쳐야 하는 사람은

 

아래도 같이 해준다! 나는 KO16MSWIN949 로 설치해서 안했음!

 

2. 캐릭터셋 변경

우선 dba로 sqlplus를 접속한다.

# sqlplus / as sysdba;
 
그 다음엔 캐릭터셋을 바꾼다

sql>update sys.props$ set value$='AL32UTF8' where name='NLS_CHARACTERSET';
sql>update sys.props$ set value$='AL32UTF8' where name='NLS_NCHAR_CHARACTERSET';
sql>update sys.props$ set value$='KOREAN_KOREA.AL32UTF8' where name='NLS_LANGUAGE';

sql>commit;
 
그리고 sqlplus를 재시작하고
sql>shutdown immediate;
sql>startup mount;

설정을 약간 수정한다.
sql>alter system enable restricted session;
sql>alter system set job_queue_processes=0;
sql>alter system set aq_tm_processes=0;
sql>alter database open;
sql>alter database character set AL32UTF8;

그리고 다시 sqlplus를 재시작한다.
sql>shutdown immediate;
sql>startup;

3. 테스트

이거야 자기 자유겠지만 나는

SQL> SELECT '테스트' as 한글테스트 from dual; 
반응형