아놔 진작 이 방법을 쓸껄 ㅋㅋㅋ

먼저 select name, value$ from SYS.props$; 쿼리를 날려 캐릭터 셋을 확인 한다.
 
아니면
SELECT
(SELECT VALUE FROM nls_database_parameters WHERE PARAMETER = 'NLS_LANGUAGE') || '_' ||
(SELECT VALUE FROM nls_database_parameters WHERE PARAMETER = 'NLS_TERRITORY') || '.' ||
(SELECT VALUE FROM nls_database_parameters WHERE PARAMETER = 'NLS_CHARACTERSET')
FROM DUAL;
이렇게 하면 확실하게 캐릭터 샛을 확인 할 수 있다.

NLS_CHARACTERSET이 KO16KSC5601 아니면 한글이 깨질 가능성이 크다.

관리자 모드(토드를 접속해도 무관하나 나는 DB서버 오라클 계정에서 sqlplus "/as sysdba" 로 접속)

update sys.props$ set value$='AMERICAN' where name='NLS_LANGUAGE';
update sys.props$ set value$='AMERICA' where name='NLS_TERRITORY';
update sys.props$ set value$='KO16KSC5601' where name='NLS_CHARACTERSET';
update sys.props$ set value$='AL16UTF16' where name='NLS_NCHAR_CHARACTERSET';

업데이트 후 오라클 재시작했다.

p.s was계정 쪽 .bash_profile에 굳이 nls_lang을 설정할 필요는 없다라~~~

Posted by 오달봉
,