DoubleDBDeep

Linux 64bit | Oracle database 19c Gateway for DRDA 설치 (DB2<-> ORACLE DBLINK 연결) 본문

ETC/도전

Linux 64bit | Oracle database 19c Gateway for DRDA 설치 (DB2<-> ORACLE DBLINK 연결)

DBCAMI 2025. 3. 20. 10:45

오라클 엔진에 종속되게 하지 않고 유저/엔진 분리함 

 

1. 게이트웨이 전용 유저 생성

/usr/sbin/useradd -g oinstall -G oinstall,dba,dgdba,kmdba,racdba,vboxsf db2gw

mkdir -p /u02/app/oracle/product/19.0.0.0/dbhome_1
chown -R db2gw:oinstall /u02
chown -R db2gw:oinstall /u02/app/oracle/product
chmod -R 775 /u02

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH
##########################################
# 1. ORACLE
##########################################
export ORACLE_BASE=/u02/app/oracle
export ORACLE_HOME=/u02/app/oracle/product/19.0.0.0/dbhome_1
export ORACLE_SID=db2gw

##########################################
# 2. FORMAT
##########################################
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME/OPatch
export BASE_PATH=/usr/sbin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export PS1='[$ORACLE_SID@\u:$PWD]> '
export NLS_DATE_FORMAT='YYYY/MM/DD HH24:MI:SS'
set -o vi
stty erase ^H


##########################################
# 3. ALIAS
##########################################
alias ss='sqlplus / as sysdba'
alias cdb='cd $ORACLE_BASE'
alias cdo='cd $ORACLE_HOME'
alias dbs='cd $ORACLE_HOME/dbs'
alias net='cd $ORACLE_HOME/network/admin'
alias ..='. ~/.bash_profile'
alias ...='vi  ~/.bash_profile'
alias bdump='cd /u02/app/oracle/diag/rdbms/racup/$ORACLE_SID/trace'

 

2. db 엔진설치

mkdir -p $ORACLE_HOME
cd /media/sf_01.oracle/3.ENGINE/19
unzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME
cdo
export DISPLAY=192.168.0.57:0.0
./runInstaller

 

3. 게이트웨이 설치

[db2gw@db2gw:/u02/app/oracle/product/19.0.0.0/dbhome_1]> cd /media/odbc/gateways/
[db2gw@db2gw:/media/odbc/gateways]> ls
install  response  runInstaller  stage  welcome.html
[db2gw@db2gw:/media/odbc/gateways]> ./runInstaller
Starting Oracle Universal Installer...

Checking Temp space: must be greater than 415 MB.   Actual 13909 MB    Passed
Checking swap space: must be greater than 150 MB.   Actual 5050 MB    Passed
Checking monitor: must be configured to display at least 256 colors.    Actual 16777216    Passed
Preparing to launch Oracle Universal Installer from /tmp/OraInstall2025-03-19_07-41-06AM. Please wait ...

 

설치한 DB2 접속 정보를 입력

 

설치는 완료

 

 

4. 접속 설정

/u02/app/oracle/product/19.0.0.0/dbhome_1/dg4db2/admin/initdg4db2.ora
HS_FDS_CONNECT_INFO=[192.168.0.66]:50000/sample,LUW
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
HS_TRANSACTION_MODEL=COMMIT_CONFIRM
HS_FDS_TRANSACTION_ISOLATION=READ_COMMITTED
HS_FDS_SUPPORT_STATISTICS=TRUE
HS_FDS_RESULTSET_SUPPORT=FALSE
HS_FDS_PACKAGE_COLLID=ORACLEGTW
HS_IDLE_TIMEOUT=0

 

5. 리스너

LISTENER_DG4DB2 =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = target)(PORT = 1523))
    )
  )

SID_LIST_LISTENER_DG4DB2 =
  (SID_LIST =
    (SID_DESC =
      (ORACLE_HOME = /u02/app/oracle/product/19.0.0.0/dbhome_1)
      (SID_NAME = dg4db2)
      (PROGRAM = dg4db2)
    )
  )

 

6. tnsnames

dg4db2 =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.63)(PORT = 1523))
    )
    (CONNECT_DATA =
      (SID = dg4db2)
      (SERVER = DEDICATED)
    )
    (HS=OK)
  )

 

7. db링크 생성

create public database link DG4DB2 connect to db2inst1 identified by welcome1
using 'dg4db2';

 

@DG4DB2로 조회하니 잘나온다

728x90