TbSQL은 티베로(Tibero)에서 제공하는 SQL문장을 처리하는 대화용 유틸리티 입니다.
TbSQL를 활용하여 SQL 질의, 데이터 정의어 (DDL: Data Definition Language),
트랜잭션과 관련된 SQL 문장을 실행할 수 있습니다.
이 문서에서는, 다양한 설정에 따라 (Locale, 터미널 encoding, TB_NLS_LANG) TbSQL
상에서 정상적으로 한글데이터를 조회할 수 있도록 리눅스 환경에서 조치할 수 있는 설정방안을
안내합니다.
1. OS의 LANG 확인 및 설정
locale 명령으로 현재 설정된 OS 계정의 LANG값을 확인할 수 있습니다.
또한, locale –a 명령으로 설정 가능한 List들을 확인할 수 있습니다.
![](https://blog.kakaocdn.net/dn/bDZrpn/btr3SZpgYv6/51eHwK0K00XD4X3C3Dqj20/img.png)
Note! export LANG=설정할 Locale값 또는 export LC_ALL= 설정할 Locale값 명령어로 설정 변경이 가능합니다. |
2. 터미널 프로그램 설정 변경
Secure CRT
상단 Option > Session Options => 좌측 Category의 Terminal > Appearance 중간의 Character encoding
XShell
접속정보(세션) 우클릭 등록정보 > 터미널 - 화면하단의 변환 > 인코딩
Putty
설정 창 좌측의 Window > Translation 우측 상단 Remote character set
Note! 터미널 프로그램의 Encoding 설정값과 위 항목(OS의 LANG 확인 및 설정)의 Locale값이 다를 경우, vi편집기가 정상동작하지 않거나, 한글로 입력한 값이 화면 상에는 정상적으로 보이지만 실제 Data는 손상되는 등 문제가 발생할 수 있습니다. Locale에 맞게 터미널 설정 변경 후 작업하세요. |
3. TbSQL 접속 설정
터미널 설정과 마찬가지로 Locale에 맞게 TB_NLS_LANG값 설정 후 정상적으로 한글Data 적재 및 조회가 가능합니다.
Locale, Terminal, TB_NLS_LANG이 맞을 경우 tbadmin과 동일하게 한글Data를 처리할 수 있습니다.
TbSQL 내부 수행
TbSQL에 접속할 때는 tbdsn.tbr 파일의 TB_NLS_LANG 설정에 영향을 받습니다.
별도의 설정이 없을 경우 기본값은 MSWIN949 입니다
TbSQL @ 기능
OS상에서 파일안에 insert문을 작성 후 tbsql의 @기능을 실행하는 경우가 많습니다.
이때 한글Data가 있을 경우, 실행하고자 하는 SQL파일이 저장된 Encoding에 맞춰
TB_NLS_LANG 설정 후 tbsql접속이 필요합니다.
매번 TB_NLS_LANG을 변경하는 것보다는 Locale 및 TB_NLS_LANG에 맞는
Encoding 값으로 파일 저장을 권합니다.
Note! OS상의 Locale을 변경할 경우 영향도에 대해서는 확인할 수 없었습니다. 테스트 과정에서 새로운 접속없이 임의로 Locale을 반복적으로 변경할 경우 여러 설정들이 뒤섞이므로 명령어들이 정상 동작하지 않을 수 있습니다. 적절한 값으로 Locale과 TB_NLS_LANG을 고정한 상황에서 터미널 설정 및 파일 Encoding을 변경해주세요. |
'Admin, 환경설정' 카테고리의 다른 글
[Tibero] Tibero 운영 가이드 for beginner (4) (0) | 2023.05.12 |
---|---|
[Tibero] Tibero 운영 가이드 for beginner (3) (0) | 2023.05.12 |
[Tibero] Tibero 운영 가이드 for beginner (1) (0) | 2023.05.12 |
[Tibero] User Privileges, Role 조회 (2) (0) | 2023.03.29 |
[Tibero] User Privileges, Role 조회 (1) (0) | 2023.03.29 |