출처 : blog.neonkid.xyz/179

리눅스에서 ODBC 사용하기

1. ODBC 란

Open DataBase Connectivity 의 약자로 Microsoft 에서 개발한 데이터베이스를 연결하기 위한 공개형 응용 프로그램 인터페이스 이다.
ODBC 를 활용하면, 데이터베이스와 연결하기 위해 Socket 을 사용해 커넥션을 생성하고 서버와 통신할 클라이언트 클래스, 모듈 등을 개발할 필요가 없다. 그리고 DBMS 종류 별로 개발할 필요 없이 ODBC API 를 표준에 맞춰 개발하면 데이터베이스 별 드라이버를 통해 모든 DBMS 를 연결할 수 있다.
하지만 ODBC 드라이버 단계를 거쳐야 하기 때문에 직접 데이터베이스 API 를 사용해 개발한 것 보다 성능은 좋지 않다.
다운로드
unixODBC 는 odbc 를 unix 계열 운영체제에서 사용할 수 있도록 만든 것이다.
ODBC 오픈소스 프로젝트 중 하나로 유사한 것으로 iodbc 가 있다.

2. unixODBC 설치

$ sudo yum install unixodbc unixodbc-devel

3. DBMS 연결을 위한 설정

DBMS 에 연결하기 위해 odbc.ini, odbcinst.ini 구성 파일을 수정해야 한다.
odbcinst.ini 파일은 운영체제에서 사용할 DBMS 의 ODBC 드라이버 정보를 저장한다.

[ODBC]
Trace           = YES
Trace File      = /tmp/sql.log
Pooling         = Yes

[TiberoDB]
Description     = ODBC for TiberoDB
Driver          = /usr/lib/libtbodbc.so
Driver64        = /usr/lib64/libtbodbc.so
Setup           = /usr/lib/libtbodbc.so
FileUsage       = 1
DontDLClose     = 1
CPTimeout       = 5000

odbcinst.ini 파일을 수정하면

$ odbcinst -q -d 

명령어로 odbcinst.ini 파일을 다시 로드해야 한다.


odbc.ini 파일은 odbcinst.ini 파일에 기반해 존재하는 드라이버를 토대로 사용할 DBMS 서버, 유저 정보 등을 구성하는 파일이다

[ODBC]
Trace           = 1
TraceFile       = 1

[TiberoDB]
Trace           = no
Driver          = TiberoDB // odbcinst.ini 에 설정한 이름
Description     = Tibero ODBC Datasource
SERVER          = 10.10.123.123
PORT            = 8629
SID             = tibero
User            = sys
Password        = tibero
Database        = tibero

4. 테스트

$ isql TiberoDB

명령어로 원격 DBMS 에 접속되는지 확인한다.