리눅스에서 ODBC 사용하기
출처 : 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 에 접속되는지 확인한다.