ODBC(Open DataBase Connectivity)는 응용 프로그램(Application Program, AP)이 데이터베이스에 접근할 수 있도록 마이크로소프트사에서 만든 소프트웨어 표준 규격 입니다.
ODBC 드라이버는 ODBC 클라이언트가 DBMS 서버에서 데이터를 갖고 오거나 보내고자 할 경우, 명령을 각기 종단에서 알 수 있도록 변환합니다. 또한 ODBC 드라이버는 프론트-엔드에 존재함으로서 ODBC 클라이언트가 전송하는 명령을 DBMS 서버가 알 수 있도록 변환시키고 그 반대의 경우에도 ODBC 클라이언트가 알 수 있도록 변환시킵니다.
본 문서에서는 ODBC 설치 및 연결 방법을 안내 합니다.
ODBC Manager 설치
ODBC를 사용하기 위해서는 ODBC 클라이언트, ODBC 드라이버, 접속하려는 DBMS 서버와 같은 세 가지 구성 요소가 필요합니다.
UNIX 계열의 경우 ODBC Manager가 존재하지 않으므로 IODBC 또는 UNIX ODBC를 별도로 설치합니다.
본 문서에서는 IODBC와 Tibero를 연결하는 방법에 대해 안내합니다.
Note!
본 문서에서는 IODBC 설치 경로를 사용자 계정의 home 디렉토리와 root 경로를 지정할 경우로 구분했습니다.
환경 설정
IODBC를 설치하기 전 기본 환경을 설정하고 사전 환경을 점검하는 방법 입니다.
1. 설치 컴파일러 확인
컴파일러에 따라 IODBC 설치 시 CC 파라미터(컴파일러 파라미터)를 적용해야 하므로 컴파일러(cc or gcc)의 설치 유무를 확인합니다.
아래는 컴파일러 설치 유무를 확인하는 방법입니다.
$ gcc -v (or cc -v)
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-redhat-linux/4.8.5/lto-wrapper
Target: x86_64-redhat-linux
Configured with: ../configure –prefix=/usr –mandir=/usr/share/man –infodir=/usr/share/info –with-bugurl=http://bugzilla.redhat.com/bugzilla –enable-bootstrap –enable-shared –enable-threads=posix –enable-checking=release –with-system-zlib –enable-__cxa_atexit –disable-libunwind-exceptions –enable-gnu-unique-object –enable-linker-build-id –with-linker-hash-style=gnu –enable-languages=c,c++,objc,obj-c++,java,fortran,ada,go,lto –enable-plugin –enable-initfini-array –disable-libgcj –with-isl=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/isl-install –with-cloog=/builddir/build/BUILD/gcc-4.8.5-20150702/obj-x86_64-redhat-linux/cloog-install –enable-gnu-indirect-function –with-tune=generic –with-arch_32=x86-64 –build=x86_64-redhat-linux
Thread model: posix
gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC)
2. libtbodbc.so 파일 확인
아래 64bit 환경에서의 실행 예제를 참고해 $TB_HOME/client/lib (또는 $TB_HOME/client/lib32) 디렉토리에 libtbodbc.so 파일이 존재하는지 확인합니다.
[Linux] 실행 결과
$ file $TB_HOME/client/lib/libtbodbc.so
/home/tibero6/tibero6/client/lib/libtbodbc.so: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped
[AIX] 실행 결과
$ file $TB_HOME/client/lib/libtbodbc.so
/data/tibero6/tibero6/client/lib/libtbodbc.so: 64-bit XCOFF executable or object module not stripped
3. PROFILE 설정
3.1. HOME 경로 확인
사용자 계정의 home 디렉토리에 설치 할 경우
$ echo $HOME
/home/tibero6/tibero6
/etc/ 경로에 설치 할 경우(root 경로)
$ echo $HOME
/root
3.2. libtbodbc.so 경로 추가
환경설정 파일의 LD_LIBRARY_PATH 환경 변수에 libtbodbc.so 파일의 경로를 추가합니다.
Note!
장비에 따라 LD_LIBRARY_PATH 외의 다른 환경 변수를 사용할 수도 있습니다.예) AIX – LIBPATH / HP – SHLIB_PATH 환경변수 사용
[Linux -> bash_profile]
export LD_LIBRARY_PATH=$TB_HOME/lib:$TB_HOME/client/lib:$LD_LIBRARY_PATH
[AIX -> .profile]
export LIBPATH=$TB_HOME/lib:$TB_HOME/client/lib:$LIBPATH
[HP -> .profile]
export SHLIB_PATH=$TB_HOME/lib:$TB_HOME/client/lib:$SHLIB_PATH
3.3. IODBC 환경변수 설정
환경설정 파일에 IODBC 관련 환경변수를 추가합니다.
사용자 계정의 home 디렉토리에 설치 할 경우
[Linux -> bash_profile]
#### IODBC Setting ####
export IODBC_HOME=$HOME/iodbc – IODBC 설치 할 위치
export LD_LIBRARY_PATH=$IODBC_HOME/lib:$LD_LIBRARY_PATH
export PATH=$IODBC_HOME/bin:$PATH
[AIX -> .profile]
#### IODBC Setting ####
export IODBC_HOME=$HOME/iodbc
export LIBPATH=$IODBC_HOME/lib:$LIBPATH
export PATH=$IODBC_HOME/lib:$PATH
export OBJECT_MODE=64 – 머신이 64bit일 때 추가
/etc/ 경로에 설치 할 경우(root 경로)
[Linux -> bash_profile]
#### IODBC Setting ####
export IODBC_HOME=/etc/iodbc – IODBC 설치 할 위치
export LD_LIBRARY_PATH=$IODBC_HOME/lib:$LD_LIBRARY_PATH
export PATH=$IODBC_HOME/bin:$PATH
[AIX -> .profile]
#### IODBC Setting ####
export IODBC_HOME=/etc/iodbc
export LIBPATH=$IODBC_HOME/lib:$LIBPATH
export PATH=$IODBC_HOME/lib:$PATH
export OBJECT_MODE=64 – 머신이 64bit일 때 추가
☞ “[Tibero] ODBC 설치 및 연결 가이드 in Unix (2)”에서 계속됩니다.