테스트환경 : Oracle Linux 7.9 / Oracle Database 19c /Oracle Tuxedo 12c
테스트과정
----Database----
0. oracle DB 사용자 생성 및 권한 부여
#DB접속
[oracle@jwchoi|/]$ ss
SQL*Plus: Release 19.0.0.0.0 - Production on Thu Oct 20 12:20:26 2022
Version 19.12.0.0.0
Copyright (c) 1982, 2021, Oracle. All rights reserved.
Connected to an idle instance.
#DB기동
SQL> startup
ORACLE instance started.
Total System Global Area 1174404424 bytes
Fixed Size 8895816 bytes
Variable Size 469762048 bytes
Database Buffers 687865856 bytes
Redo Buffers 7880704 bytes
Database mounted.
Database opened.
#사용자 및 패스워드 생성
SQL> CREATE USER jwchoi IDENTIFIED BY welcome1;
User created.
# 사용자 권한부여
SQL> grant connect, dba, resource to jwchoi;
Grant succeeded.
----Tuxedo----
1. Tuxedo RM 설정
- $TUXDIR/udataobj/RM 파일 열어서
"Oracle_XA:xaosw:-L${ORACLE_HOME}/lib -lclntsh" 부분 주석 품
vi $TUXDIR/udataobj/RM
TUXEDO/D:tuxd_switch:-lrms -lfs
TUXEDO/SQL:tuxsql_switch:-lsql -lusort -lrms -lfs
NONE:tmnull_switch:
TUXEDO/QM:tuxq_switch:-lqm -ltmib
#
# BEA makes no attempt to keep the information in the following samples
# up to date. To make sure you have correct and complete information for
# your platform and RM version, please consult your RM vendor.
#
# ORACLE 7
#Oracle_XA:Oracle_XA:-L${ORACLE_HOME}/lib -lxa ${ORACLE_HOME}/lib/libsql.a -lora -lsqlnet -lcore -lnlsrtl -lcore ${ORACLE_HOME}/lib/osntab.o -lsqlnet -lcv6 -lora -lm -lsocket
# Oracle 9, 10
Oracle_XA:xaosw:-L${ORACLE_HOME}/lib -lclntsh
# INFORMIX-Online 5
#INFORMIX-OnLine:infx_xa_switch:${INFORMIXDIR}/lib/esql/libinfxxa.a -lx
# INFORMIX-Online 6
#INFORMIX-OnLine:infx_xa_switch:${INFORMIXDIR}/lib/esql/libinfxxa.a ${INFORMIXDIR}/lib/esql/libsql.a ${INFORMIXDIR}/lib/libasf.a ${INFORMIXDIR}/lib/netlib.a ${INFORMIXDIR}/lib
#/esql/libgen.a ${INFORMIXDIR}/lib/esql/libos.a -lsocket -lm
#ident "@(#)RM 1.3"
#NONE2:tmnull2_switch:xa.o
# WebSphere MQ 6.0
#MQSeries_XA_RMI:MQRMIXASwitchDynamic: -L/usr/mqm/lib64 -lmqmxa64 -lmqm -lmqmcs
# TMQ 12.1.0.0
#TUXEDO/TMQM:tuxq_switch: -ltmqm -ltmib -ltmq
2. Tuxedo TMS 생성
- 첨부된 TMS 생성 파일 내용중 2번 수행 (TMS 생성 이름은 "TMS_ORA19" - 19부분은 oracle버젼으로
하는 것이 통상적)
$ buildtms -o TMS_ORA19 -r Oracle_XA
TMS_ORA19 파일이 생성되면 $TUXDIR/bin 디렉토리 안에 넣어줌
cp TMS_ORA19 $TUXDIR/udataobj/bin
3. TLOG 생성
- ubbconfig
1) MAXGTT 값 설정
2) TLOGSIZE 값 설정 (MAXGTT 값 <= TLOGSIZE )
3) TLOGDEVICE 패스 설정 ("..../..../TLOG") - TLOG 이름까지 설정
*RESOURCES
IPCKEY 234423
PERM 0600
DOMAINID simpapp
MASTER simple
MAXACCESSERS 1000
MAXSERVERS 100
MAXSERVICES 500
MAXGROUPS 100
MAXCONV 10
MAXGTT 100
#SCANUNIT 5
#SANITYSCAN 24
#BLOCKTIME 6
#OPTIONS LAN
MODEL SHM
DBBLWAIT 2
LDBAL N
*MACHINES
DEFAULT:
jwchoi LMID=simple
APPDIR="/sw/tp/tuxedo12.2.2.0.0/samples/atmi/simpapp"
TUXCONFIG="/sw/tp/tuxedo12.2.2.0.0/samples/atmi/simpapp/tuxconfig"
TUXDIR="/sw/tp/tuxedo12.2.2.0.0/"
TLOGDEVICE="/sw/tp/tuxedo12.2.2.0.0/samples/atmi/simpapp/TLOG"
MAXWSCLIENTS=800
4. 물리적인 TLOG 생성
- Tuxedo shutdown 기동 중인 것을 내리고 command utility로 접속해야한다.
- tmadmin -v
> crdl -d size -z "path"
size -> TLOGSIZE 값 + 500
path -> TLOGDEVICE 패스 설정
crdl -b 500 -z /sw/tp/tuxedo12.2.2.0.0/samples/atmi/simpapp/TLOG
5. ubbconfig 의 GROUP section에 XA 그룹 openinfo 설정 (문서 예제 설정)
P/DB사용자/DB사용자패스워드
OPENINFO="Oracle_XA:Oracle_XA+Acc=P/jwchoi/welcome1+SesTm=60+LogDir=log_path+DbgFl=15"
구성이 완료되면
tuxedo 기동 후 프로세스 확인
Transactions Managed Server 프로세스 기동이 정상적임
XA 구성 완료
$ tmadmin -r
tmadmin - Copyright (c) 1996-2016 Oracle.
All Rights Reserved.
Distributed under license by Oracle.
Tuxedo is a registered trademark.
TMADMIN_CAT:199: WARN: Cannot become administrator.Limited set of commands available.
> psr
Prog Name Queue Name 2ndQueue Name Grp Name ID RqDone Load Done Current Service
--------- ---------- ---------- -------- -- ------ --------- ---------------
WSL 00008.02000 TS_XA 2000 0 0 ( IDLE )
BBL 234423 simple 0 2 100 ( IDLE )
TMS_ORA19 TS_XA_TMS TS_XA 30001 0 0 ( IDLE )
TMS_ORA19 TS_XA_TMS TS_XA 30002 0 0 ( IDLE )
simpserv test TS_XA 100 0 0 ( IDLE )
simpserv test TS_XA 101 0 0 ( IDLE )
> psc
Service Name Routine Name Prog Name Grp Name ID Machine # Done Status
------------ ------------ --------- -------- -- ------- ------ ------
TMS TMS TMS_ORA19 TS_XA 30001 simple 0 AVAIL
TMS TMS TMS_ORA19 TS_XA 30002 simple 0 AVAIL
TOUPPER TOUPPER simpserv TS_XA 100 simple 0 AVAIL
TOUPPER TOUPPER simpserv TS_XA 101 simple 0 AVAIL
RM섹션은 DB에 접근하는 TUXEDO application을 만들고 실행시키는데에 있어서는 필수입니다.
처음 RM을 열어보면 이 정도로 되어있습니다.
TUXEDO/D:tuxd_switch:-lrms -lfs
TUXEDO/SQL:tuxsql_switch:-lsql -lusort -lrms -lfs
NONE:tmnull_switch:
TUXEDO/QM:tuxq_switch:-lqm -ltmib
맨 앞에 적혀있는 것이 RM section name 입니다.
이걸 만들기 위해서는.. 일단 DB를 먼저 설치를 해야 합니다.
그리고, Oracle의 경우라면 제가 예전에 이 게시판에 적어놓은 "RM 섹션 만들기"라는 글을 참고하시면 되겠습니다.
Oracle8이면 아마 대충 이렇게 나올겁니다.
Oracle8_XA:xaosw:-L/oracle8/app/oracle/product/8.1.7/lib -lclntsh
이렇게 만든 RM section 명이 나중에 ubbconfig 파일을 만들 때에 *GROUPS 절의 XA 그룹 TMS openinfo string에서 사용됩니다.
5) TMS 만들기
RM섹션까지 만들었으면 이제...
buildtms -r Oracle8_XA -o TMS_ORACLE8
이런 식으로 TMS를 만듭니다. (TMS_ORACLE8이 TMS의 이름입니다. 뭐 이름은 자유롭게 만들고 싶은대로 만들면 됩니다. ^^) TMS binary가 생성되었으면 이것을 TUXDIR의 bin 이라는 디렉토리로 옮깁니다.
cp TMS_ORACLE8 $TUXDIR/bin
뭐 이런식으로 말이죠.. ^^ 이제 TUXEDO 구동을 위한 최소한의 준비가 된겁니다.
아래 내용은 꼭 tuxedo engine owner ID로 하실 필요는 없습니다. TUXDIR만 설정해 주시고 TUXDIR에 대한 read / 실행 권한만 있으면 어느 아이디건간에 TUXEDO admin이 될 수 있습니다.
'Middleware > Tuxedo' 카테고리의 다른 글
[Tuxedo] tuxedo 22c release (0) | 2022.11.08 |
---|---|
[Tuxedo] Oracle Tuxedo 22c console 설치 테스트 (0) | 2022.11.07 |
[Tuxedo] 통계자료 리포팅 관련 명령 (0) | 2022.10.20 |
[Tuxedo] Bulletin Board 정보 조회 (0) | 2022.10.20 |
[Tuxedo] 미들웨어 (MiddleWare)란? (0) | 2022.10.18 |