Your SlideShare is downloading. ×
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
DRDA AS와 SPM 설정 가이드
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

DRDA AS와 SPM 설정 가이드

527

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
527
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Ⅲ. Twophase Commit 을 위한 SPM 설정 1. UDB/AIX SERVER 에서의 작업 SPM 의 SNA 구성 필요조건과 데이타베이스 관리프로그램 구성매개변수와의 통신 구성 파일간의 상호 의존성을 설명하고자 한다. SNA 통신은 DB2 Connect 워크스테이션에서 SPM 용으로 구성되어야 한다. 즉, LU6.2 사이드 정보 프로파일과 LU6.2 트랜잭션 프로그램명 프로파일은 SPM 을 AIX SNA 서버에서 식별하도록 정의되어야 한다. LU6.2 사이드 정보 프로파일과 트랜잭션 프로그램명 프로파일 이름은 데이터 베이스 관리 프로그램 구성의 SPM_NAME 매개변수와 일치해야 한다. 그 구성은 다음과 같습니다. 1) 데이타베이스 관리 프로그램 구성은 SPM_NAME 을 LU 6.2 Side Information Profile 의 이름인 SPMNAME 으로 갱신한다. # db2 update database manager configuration using spm_name SPMNAME 2) 호스트시스템에서 DB2 Universal Database 서버까지의 연결 기능만을 기대한 다면 또는 AIX 용 CICS 와 같은 TP 환경만을 사용한다면 TM 데이타베이스 는 필요하지 않습니다. TM 데이타베이스를 작성하십시오. 그 데이타베이스는 DB2 Connect 워크스테이션에서 국지 데이타베이스여야 한다. # db2 create database TMDB alias TMDB TM 데이타베이스가 국지적이라면 TM_DATABASE 데이타베이스 관리 프로 그램 구성 매개변수를 TM 데이타베이스의 이름으로 갱신하십시오. # db2 update database manager configuration using tm_database TMDB 3) 레지스트리 값 DB2COMM 이 APPC 값을 포함하는지 확인하고, 데이터 베이스 INSTANCE 를 재시작 하십시오. DB2SET DB2COMM = APPC -I Instance_name DB2STOP FORCE DB2START 76
  • 2. 4) SNA PROFILE 에서 LU 6.2 Side Information Profile 을 다음과 같이 정의 한다. Add LU 6.2 Side Information Profile 입력 필드에 값을 입력하거나 선택하십시오. 원하는 것을 모두 변경한 후, Enter 키를 누르십시오. [입력 필드] * Profile name [SPMNAME] Local LU or Control Point alias [L954030I] + Provide only one of the following: Partner LU alias [] + Fully qualified partner LU name [] Mode name [IBMRDB] + Remote transaction program name (RTPN) [] RTPN in hexadecimal? no + Comments [] F1=도움말 F2=화면 갱신 F3=취소 F4=리스트 Esc+5=복원 Esc+6=명령 Esc+7=편집 Esc+8=이미지 Esc+9=쉘 Esc+0=종료 Enter=실행 5) SNA PROFILE 에서 LU 6.2 Local LU Profile 에서 “RRM Enabled “ 변수를 “Yes” 로 변경한다. 6) AIX 에서 Trusted 그룹명의 SNA 서버목록은 SPM 을 시작할 수 있는 그룹을 포함하도록 갱신되어야 한다. trusted 그룹명을 나열하려면 SNA 생략시 값을 이용하십시오. 7) SNA PROFILE 에서 LU 6.2 TPN Profile 을 다음과 같이 추가한다. 여기서 User ID 는 UDB INSTANCE OWNER 의 ID 를 삽입한다. 또한, PROFILE 이름은 LU 6.2 Side Information Profile 의 이름과 동일하게 갱신한다. 77
  • 3. Add LU 6.2 TPN Profile 입력 필드에 값을 입력하거나 선택하십시오. 원하는 것을 모두 변경한 후, Enter 키를 누르십시오. [입력 필드] * Profile name [SPMNAME] Transaction program name (TPN) [SPMNAME] Transaction program name (TPN) is in hexadecimal? no + PIP data? no + If yes, Subfields (0-99) [0] # Use Command Line Parameters? no + Command Line Parameters [] Conversation type either + Sync level all + Resource security level none + If access, Resource Security Access List Prof . [] * Full path to TP executable [/dev/sna] Multiple instances supported? no + Use user ID from ATTACH? no + User ID [203] # Server synonym name [] Restart action once + Communication type signals + If IPC, Communication IPC queue key [0] # Time out Attaches? yes + If yes, time-out value (0-3600 seconds) [60] # * Standard input file/device [/dev/console] * Standard output file/device [/dev/console] * Standard error file/device [/dev/console] Comments [] F1=도움말 F2=화면 갱신 F3=취소 F4=리스트 Esc+5=복원 Esc+6=명령 Esc+7=편집 Esc+8=이미지 Esc+9=쉘 Esc+0=종료 Enter=실행 “Sync level” 은 “all” , “지원 복수 인스턴스”는 “아니오” 그리고 “Full path to TP executable” 에는 “/dev/sna” 로 설정되어 있어야 한다. 이로써 SNA PROFILE 작업이 끝나게 되면, SNA PROFILE 을 VERIFY 하고 SNA 를 재시작한다. 78
  • 4. 8) 사용중인 DRDA2 호스트 데이타베이스가 호스트의 동기지정이 가능한지 확인 하십시오. 예를 들어 MVS/ESA 용 DB2 나 OS/390 용 DB2 의 사용시 DDF LU 를 정의하는 VTAM APPL 명령문에는 SYNCLVL=SYNCPT 이 있어야 한다. 9) SPM CONFIGURATION 이 제대로 되었는 지를 TEST 하는 방법 $ DB2 DB2=> UPDATE COMMAND OPTIONS USING C OFF DB2=> SET CLIENT CONNECT 2 SYNCPOINT TWOPHASE DB2=> CONNECT TO HPRDMVS USER MVS_USER USING PASSWD DB2=> CONNECT TO AIXDB USER AIX_USER USING AIX_PWD DB2=> SET CONNECTION HPRDMVS DB2=> < SQL 문 > ….. DB2=> SET CONNECTION AIXDB DB2=> < SQL 문 > ….. DB2=> COMMIT 또는 ROLLBACK 2. UDB/Win95 Client 에서의 작업 1) AIX_DB, MVS_DB 및 TMDB 를 CATALOG 하여 연결한다. DB2 CATALOG TCPIP NODE AIXNODE REMOTE IP_ADDR SERVER DB2UDB DB2 CATALOG DB MVS_DB ATNODE AIXNODE AUTHENTICATION CLIENT DB2 CATALOG DB AIX_DB AT NODE AIXNODE DB2 CATALOG DB TMDB AT NODE AIXNODE 79
  • 5. 2) 필요하다면 BIND 작업을 수행한다. DB2 CONNECT TO MVS_DB DB2 BIND @DDCSMVS.LST ISOLATION UR BLOCKING ALL SQLERROR CONTINUE GRANT PUBLIC DB2 BIND @DB2CLI.LST ISOLATION UR BLOCKING ALL SQLERROR CONTINUE GRANT PUBLIC DB2 CONNECT TO AIX_DB DB2 BIND @DB2UBIND.LST ISOLATION UR BLOCKING ALL GRANT PUBLIC DB2 BIND @DB2CLI.LST ISOLATION UR BLOCKING ALL GRANT PUBLIC DB2 CONNECT TO TMDB DB2 BIND @DB2UBIND.LST ISOLATION UR BLOCKING ALL GRANT PUBLIC DB2 BIND @DB2CLI.LST ISOLATION UR BLOCKING ALL GRANT PUBLIC 3) UDB CLIENT 의 INSTANCE 를 변경한다. DB2 UPDATE DBM CFG USING TM_DATABASE TMDB DB2 TERMINATE 4) ODBC 32 비트 설정에서 AIX_DB, MVS_DB 및 TMDB 의 환경을 바꿉니다. 즉, DB2CLI.INI 파일을 다음과 같이 편집한다. [MVS_DB] DBALIAS = MVS_DB SYNCPOINT = 2 CONNECTTYPE = 2 [AIX_DB] DBALIAS = AIX_DB SYNCPOINT = 2 CONNECTTYPE = 2 80
  • 6. 3. 기타 필요사항 또한, 데이타베이스 관리 프로그램 구성 매개변수는 DB2 Connect Enterprise Edition 이 설치된 워크스테이션에서 SPM 을 사용하기 위해 필요한다. SPM_LOG_FILE_SZ 4K 페이지 단위로 SPM 로그 파일의 크기를 결정하십시오. 생략시 값은 256 입니다. SPM_MAX_RESYNC resync 작업을 동시에 수행할 SPM 에이전트 번호를 결정하십시오. 생략시 값은 20 입니다. 4. SPM 환경을 사용하는 프로그램 개발시 고려사항 1) SPM 환경에서는 UDB INSTANCE MANAGER 가 TRANSACTION MANAGER 역할을 하도록 하며, 각각의 RESOURCE MANAGER ( TWO-PHASE COMMIT 환경을 사용하는 데이터베이스) 에 대해 다음의 예에서와 같은 조건을 만족해야 한다. 예를 들면 , 만약 A 데이터베이스의 AB 테이블을 사용한 다수의 SQL 문과 C 데이 터베이스의 CD 테이블을 사용한 여러 SQL 문을 하나의 Transaction 으로 처리하고자 할 경우에는 다음의 조건을 만족해야 한다. 즉, A 데이터베이스의 AB 테이블 생성시 사용된 동일한 DDL 을 이용하여 C 데이터베이스에 AB 테이블이 생성되 어야 하며, 다만 C 데이터베이스에 생성된 AB 테이블에는 A 데이터베이스의 AB 테이블이 갖고 있는 데이터는 가지고 있지 않습니다. 일종의 Dummy Table 형태 입니다. 마찬가지로 C 데이터베이스의 CD 테이블 생성시 사용된 동일한 DDL 을 이용하여 A 데이터베이스에 일종의 Dummy Table CD 를 생성해야 한다. 2) 3GL (COBOL,FORTRAN, C, C++)로 개발된 Application 일 경우에는 Compile & Link 하기 이전에 Precompile 해야 하는데, Precompile 시 다음의 옵션을 주어야 하며, 각각의 RESOURCE MANAGER 에 Application Bind File 을 바인드해야 한다. $ db2 prep spm.sqc connect 2 syncpoint twophase $ db2 connect to DB_NAME $ db2 bind spm.bnd 81
  • 7. Ⅳ. DRDA AS for AIX 의 Example 1. DB2/MVS 에서의 작업 DB2/MVS 의 COMM. DB 에 다음의 값들을 삽입한다. INSERT INTO SYSIBM.LUNAMES ( LUNAME, SYSMODENAME, SECURITY_OUT, ENCRYPTPSWDS, MODESELECT, USERNAMES) VALUES ( ‘AIX_LUNAME’, ‘ ’, ‘A’, ‘N’, ‘N’,’O’ ) INSERT INTO SYSIBM.LOCATIONS (LOCATION, LINKNAME , LINKATTR) VALUES ( ‘AIXDB_NAME’, ‘AIX_LUNAME’, ‘ ’) I`NSERT INTO SYSIBM.USERNAMES (TYPE,AUTHID,LINKNAME,NEWAUTHID,PASSWORD) VALUES (‘O’, ‘ ‘ , ‘AIX_LUNAME’, ‘AIX_USER’,’AIX_PWD’) DDF STOP DDF START 2. DB2/AIX V5.0 에서의 작업 1) USERID 와 PASSWORD 를 DB2/AIX 엔진에서 인증하는 방법 SNA PROFILE 중에서 LU 6.2 SESSION 의 PARTNER LU PRIFILE 의 ‘CONVERSATION SECURITY LEVEL’ 의 값을 ‘CONVERSATION’으로 하고, 데이터베이스 엔진의 ‘AUTHENTICATION’ 변수의 값을 ‘SERVER’로 한다. (DB2 UPDATE DBM CFG USING AUTHENTICATION SERVER) 그 다음 SNA PROFILE 을 VERIFY 한 후 SNA 를 재시작한다. 또한 데이터베이스 엔진도 재시작한다. 2) USERID 와 PASSWORD 를 DB2/MVS 엔진에서 인증하는 방법 SNA PROFILE 중에서 LU 6.2 SESSION 의 PARTNER LU PRIFILE 의 ‘CONVERSATION SECURITY LEVEL’의 값을 ‘Already Verified’으로 하고, 데이터베이스 엔진의 ‘AUTHENTICATION’ 변수의 값을 ‘Client’로 한다. (DB2 UPDATE DBM CFG USING AUTHENTICATION Client) 그 다음 SNA PROFILE 을 VERIFY 한 후 SNA 를 재시작한다. 또한 데이터베이스 엔진도 재시작한다. 82
  • 8. 3. 특정 MVS 사용자만 DB2/AIX 의 데이터베이스로의 연결을 제한시 DB2/MVS 의 COMM. DB 에 다음의 값들을 삽입한다. INSERT INTO SYSIBM.LUNAMES (LUNAME, SYSMODENAME, SECURITY_OUT, ENCRYPTPSWDS, MODESELECT, USERNAMES) VALUES ( ‘AIX_LUNAME’, ‘ ’, ‘A’, ‘N’, ‘N’,’O’ ) INSERT INTO SYSIBM.LOCATIONS (LOCATION, LINKNAME , LINKATTR) VALUES ( ‘AIXDB_NAME’, ‘AIX_LUNAME’, ‘ ’) INSERT INTO SYSIBM.USERNAMES (TYPE, AUTHID, LINKNAME, NEWAUTHID, PASSWORD) VALUES (‘O’, ‘MVS_USER ‘ , ‘AIX_LUNAME’, ‘AIX_USER’,’AIX_PWD’) INSERT INTO SYSIBM.USERNAMES (TYPE, AUTHID, LINKNAME, NEWAUTHID, PASSWORD) VALUES (‘O’, ‘MVS_PLAN_OWNER ‘ , ‘AIX_LUNAME’, ‘’,’MVS_PLAN_OWNER_PWD’) DDF STOP DDF START 즉, SYSIBM.USERNAMES 테이블의 AUTHID 에 MVS 의 특정 사용자를 지정 하려면, SYSIBM.USERNAMES 테이블에 하나의 행을 더 추가하여야 한다. 그 행은 AUTHID 에 MVS 의 PLAN OWNER 를 지정해야 하고, NEWAUTHID 에 NULL 값을 지정해야만 그 사용자는 OUTBOUND 되지 않습니다. 83
  • 9. Ⅴ. SPM 과 DRDA AS for AIX 의 공존을 위한 설정 1) 만약 DB2 Connect 워크스테이션에서 동기 지점 관리 프로그램을 시작하고 APPC 를 통해 클라이언트가 액세스한 DRDA1 AS 나 데이타베이스 서버로서 그것을 사용하려 한다면 다음을 실행해야 한다. ▶ AIX 동기지점 관리자 서버 노드용 DB2 Connect 에서 다음을 수행해야 한다. ● AIX 용 DB2 서버를 설치해야 한다. ● 다음의 트랜잭션 프로그램에 대해 정의된 SNA 서버/AIX LU 6. 2 트랜잭션 프로그램명(TPN)정의가 없는지 확인하십시오. X'07F6C4C2' X'07F6E2D5' X'06F2' X'06F2F0F1' DB2INTERRUPT (영숫자) DB2DRDA (영숫자) 데이타베이스 관리 프로그램 구성 매개변수 TPNAME 에서 정의된 TP 명 ▶ 데이터베이스 관리 프로그램의 변수 DIAGLEVEL = 4 를 설정하여 이것을 유효 하게 할 수 있습니다. SPM 을 초기화하기 위해 db2start 발행할때는 db2diag.log 에서 다음의 메세지를 볼 수 없어야 한다. SPM0445 트랜잭션 프로그램 TPname 은 DB2 에 의해 청취되지 않을 것입니다. ▶ SNA PROFILE 중 DRDA AS 를 위한 TP PROFILE 을 삭제하고, 데이터베이스 엔진의 TP_NAME 환경변수의 값을 SPM 용 TP PROFILE NAME 의 값으로 갱신한다. SPM 용 TP PROFILE 이 DRDA AS 를 위한 TP PROFILE 의 역할을 대신한다. 84
  • 10. TCP/IP 환경에서의 SPM 설정 1) TCP/IP 환경에서는 SNA 의 PU, LU 의 개념이 없기 때문에 데이터베이스 구성 매개변수인 SPM_NAME 에 해당 시스템의 호스트 이름을 갱신합니다. 기본적으로 제품 설치시 데이터베 이스 구성 매개변수인 SPM_NAME 에 시스템의 호스트 이름으로 갱신되어 있습니다. 2) 호스트시스템에서 DB2 Universal Database 서버까지의 연결 기능만을 기대한 다면 또는 AIX 용 CICS 와 같은 TP 환경만을 사용한다면 TM 데이타베이스 는 필요하지 않습니다. TM 데이타베이스를 작성하십시오. 그 데이타베이스는 DB2 Connect 워크스테이션에서 국지 데이타베이스여야 한다. # db2 create database TMDB alias TMDB TM 데이타베이스가 국지적이라면 TM_DATABASE 데이타베이스 관리 프로 그램 구성 매개변수를 TM 데이타베이스의 이름으로 갱신하십시오. # db2 update database manager configuration using tm_database TMDB 3) 레지스트리 값 DB2COMM 이 TCPIP 값을 포함하는지 확인하고, 데이터 베이스 INSTANCE 를 재시작 하십시오. DB2SET DB2COMM = TCPIP -I Instance_name DB2STOP FORCE DB2START 85
  • 11. TCP/IP 환경에서의 DRDA AS 설정 TCP/IP 환경에서는 클라이언트/서버 환경에서 DB2 서버에서의 환경 설정과 동일합니다. 1) services 파일 내에 서비스 포트 번호를 할당하여 등록합니다. 2) 다음과 같은 명령으로 DB2 인스턴스를 갱신합니다. # db2 update database manager configuration using svcename db2tcp 3) 레지스트리 값 DB2COMM 이 TCPIP 값을 포함하는지 확인하고, 데이터베이스 INSTANCE 를 재시작 하십시오. DB2SET DB2COMM = TCPIP -I Instance_name DB2STOP FORCE DB2START DB2 for OS/390 이 DRDA AR 일 경우 CDB 애 다음과 같이 등록한 다음, DDF 를 재시작 해야 합니다. INSERT INTO SYSIBM.LOCATIONS (LOCATION, LINKNAME, PORT) VALUES (‘SAMPLE’, ‘AIXSERVER’, ‘50000’) ; INSERT INTO SYSIBM.IPNAMES (LINKNAME, IPADDR) VALUES (‘AIXSERVER’, ‘AIXSERVER.KR.IBM.COM’) ; 86
  • 12. TCP/IP 환경에서의 DRDA AR 설정 1) 다음과 같은 카탈로그 작업을 수행합니다. DB2 CATALOG TCPIP NODE AIXNODE REMOTE IP_ADDR SERVER 446 DB2 CATALOG DB MVS_DB ATNODE AIXNODE AUTHENTICATION DCS DB2 CATALOG DCS DB MVS_DB AS MVS_DB DB2 TERMINATE 2) 필요하다면 BIND 작업을 수행한다. DB2 CONNECT TO MVS_DB USER MVSID USING MVSPASSWD DB2 BIND @DDCSMVS.LST ISOLATION UR BLOCKING ALL SQLERROR CONTINUE GRANT PUBLIC DB2 BIND @DB2CLI.LST ISOLATION UR BLOCKING ALL SQLERROR CONTINUE GRANT PUBLIC 87

×