본문 바로가기

Note

[구성] Federation MS-SQL Server

보통은 이관 작업을 위한 Oracle Federation 구성 정도가 전부인데, 일이 생겨서 MS-SQL Server의 Federation 구성을 하게 되었다.

MS-SQL 서버 Federation을 위해서는 InfoSphere Federation Server를 설치하던가, DB2 서버 설치 후 DB2 FixPack 사이트에서 관계형 wrapper와 비관계형 wrapper 설치 파일을 내려받아 설치를 해야 한다. (Advanced E/W Server Edition로는 구성 불가능)

 

또한 MS-SQL 서버에 원격 접속을 할 수 있도록 환경 구성을 위해 ODBC 클라이언트가 필요하다.

 

1. ODBC Driver 내려받기

    - 경로: ftp://ftp.software.ibm.com/software/db2ii/downloads/odbc_driver/

    - 드라이버 버전 정보: DataDirect ODBC Version 7.1

 

2. 설치 (root 계정)

    - 설치위치: /db2/v10.1f/odbc_driver  (기본 경로: /opt/IBM/ODBC_Driver)

#> export LANG=C
#> ./install.bin

 

3. 환경 설정 (인스턴스 계정)

    (1)  환경 변수 설정

$> cat ~/sqllib/userprofile << EOF

export ODBCINI=/instance/inst10f/odbc.ini
export DJX_ODBC_LIBRARY_PATH=/db2/v10.1f/odbc_driver/branded_odbc/lib
#export LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:\$DJX_ODBC_LIBRARY_PATH
export LIBPATH=\$LIBPATH:\$DJX_ODBC_LIBRARY_PATH

EOF

(주의) LIBPATH는 AIX 환경 변수 임 (운영체제에 맞는 변수명 사용 필요)

 

     (2) db2dj.ini 설정

$> cat ~/sqllib/cfg/db2dj.ini << EOF

DJX_ODBC_LIBRARY_PATH=/db2/v10.1f/odbc_driver/branded_odbc/lib
ODBCINI=/instance/inst10f/odbc.ini

EOF

 

   (3) ODBC 설정

        - 설정 파일 위치: 설치경로/branded_odbc/IBM_Tools/odbc.ini

        - MSSQL서버 정보: 192.168.137.109:1433

                           계정: sa/sa1111

                           DB  : test

                           DSN: testdsn

 

[ODBC Data Sources]
mssqlserver=Microsoft SQL Server

[ODBC]
IANAAppCodePage=4
InstallDir=/db2/v10.1f/odbc_driver
Trace=0
TraceDll=/db2/v10.1f/odbc_driver/branded_odbc/lib/VMtrc00.so
TraceFile=odbctrace.out
UseCursorLib=0


[testdsn]
Driver=/db2/v10.1f/odbc_driver/branded_odbc/lib/VMsqls00.so
Description=DataDirect 7.1 SQL Server Wire Protocol
Database=test
HostName=192.168.137.109
PortNumber=1433
LogonID=sa
password=sa1111

 

        - 연결테스트

$> cd /db2/v10.1f/odbc_driver/branded_odbc/samples/example
$> ./example testdsn

Enter the user name        : sa

Enter the password         : sa1111

SQL> select * from t1;
6066:
[IBM(DataDirect OEM)][ODBC 20101 driver]2711
[IBM(DataDirect OEM)][ODBC 20101 driver]6091

C1    C2
1     aaa
2     mssql2012
3     sqlserver


SQL> select * from sys.tables;

 

 

4. Federation 서버 구성

(1) 라이브러리 확인

$> ls –al DB2_설치경로/lib64/libdb2mssql*

-r-xr-xr-x 1 bin bin  76184 2013-11-17 16:33 libdb2mssql3.so
-r-xr-xr-x 1 bin bin 506698 2013-11-17 16:33 libdb2mssql3F.so
-r-xr-xr-x 1 bin bin 356907 2013-11-17 16:33 libdb2mssql3U.so

 

(2) 서버 구성

   - 랩퍼명: sql2000

   - 서버명: sql2012

   - 노드명: testdsn   (odbc dsn 명)

   - DB명  : test

   - 사용자 매핑: inst10f(db2) 사용자를 sa(mssql) 로 매핑함

$> db2set DB2LIBPATH=$LIBPATH

$> db2set DB2ENVLIST=DB2LIBPATH

$> db2stop force

$> db2start

$> db2 connect to sample
$> db2 "create wrapper sql2000 library 'libdb2mssql3.so'"

$> db2 "create server sql2012 TYPE mssqlserver VERSION '2012' Wrapper sql2000 options(add node 'testdsn', dbname 'test')"

$> db2 "create user mapping for inst10f server sql2012 options (add remote_authid 'sa',add remote_password 'sa1111')"

$> db2 "set passthru sql2012"

$> db2 "select * from t1"

C1          C2
----------- --------------------
          1 aaa
          2 mssql2012
          3 sqlserver

  3 record(s) selected.


$> db2 "set passthru reset"

'Note' 카테고리의 다른 글

[복구] 경로재지정 복구  (0) 2014.04.15
[관리] Backup Pending 풀기  (0) 2014.03.31
[성능] Actual Section & db2caem  (0) 2014.02.28
[성능] SQL Optimizer Profile  (0) 2014.02.06
[이관] lobsinfile 및 tempfiles path  (0) 2014.01.27