SQL문이 포함된 패키지를 트랜잭션
데이터베이스에 작성하고 패키지를 바인드한 후, pureQuery Runtime 등록 정보 및
저장소의 pureQueryXML 데이터를 갱신하여 응용프로그램이
SQL문을 정적으로 실행할 수 있게 합니다.
응용프로그램이 pureQuery
등록 정보를 새로 고치면 SQL문이 정적으로 실행됩니다.
이 태스크 정보
ManageRepository 유틸리티를 사용하여 런타임 그룹의 데이터를
갱신하고 저장소에 버전을 작성합니다. 다음 조치를
수행합니다.
- pureQueryXML 파일의 데이터를 업로드합니다.
- pureQuery Runtime 등록 정보를 갱신합니다.
- 저장소의 런타임 그룹 버전을 활성화합니다.
프로시저
SQL을 정적으로 실행하도록 pureQuery Runtime 등록 정보를 갱신하려면
다음을 수행하십시오.
- pqtest.properties 파일의 로컬 버전을 갱신하고
executionMode 등록 정보의 값을 STATIC으로 설정하십시오.
파일에 다음 텍스트가 포함됩니다.
pdq.captureMode=ON
pdq.allowDynamicSQL=TRUE
pdq.executionMode=STATIC
pureQuery Runtime 설정으로 응용프로그램은 SQL문이 pureQueryXML 파일에
있으면 SQL문을 정적으로 실행합니다. 응용프로그램이
pureQueryXML 파일에 없는 SQL문을 실행하는 경우에는 명령문이 캡처되고
동적으로 실행됩니다.
- 런타임 그룹의 버전을 저장소에 작성하십시오.
런타임 그룹 testApp의 버전 V2를 작성하십시오. pureQuery Runtime 등록 정보 및
pureQueryXML 데이터를 저장소에 업로드합니다.
다음 ManageRepository 명령은 런타임 그룹 버전을
작성합니다.
java com.ibm.pdq.tools.ManageRepository -create runtimeGroup
-repositoryDriverClass com.ibm.db2.jcc.DB2Driver
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "myuser" -repositoryPassword "mypwd"
-runtimeGroupId testApp
-runtimeGroupVersion V2
명령의 출력은 다음 예와
유사합니다.
IBM Optim pureQuery runtime 2.2.0.3 build 2.18.118
Licensed Materials - Property of IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 All Rights Reserved.
=========================================================
Starting to process options: -create "runtimeGroup"
-bind "packages" -runtimeGroupVersion "V2"
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "myuser" -repositoryPassword "******"
-repositoryDriverClass "com.ibm.db2.jcc.DB2Driver"
-runtimeGroupId "testApp"
The ManageRepository utility successfully created the runtime group "testApp" version "V2".
- 저장소의 런타임 그룹 버전을 pureQueryXML 파일 및 pqtest.properties
파일의 데이터로 갱신하십시오.
다음 명령을 실행하십시오.
java com.ibm.pdq.tools.ManageRepository
-update runtimeGroup
-repositoryDriverClass com.ibm.db2.jcc.DB2Driver
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "myuser" -repositoryPassword "mypwd"
-runtimeGroupId testApp
-pureQueryProperties ./pqtest.properties
-pureQueryXml ./testApp.pdqxml
-runtimeGroupVersion V2
명령의 출력은 다음 예와
유사합니다.
IBM Optim pureQuery Runtime 2.2.0.3 build 2.18.118
Licensed Materials - Property of IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 All Rights Reserved.
===================================================
Starting to process options: -update "runtimeGroup" -runtimeGroupVersion "v1"
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "*****" –repositoryPasword "*****"
-pureQueryProperties ".\pqtest.properties"
-pureQueryXml "capture.pdqxml"
-runtimeGroupId "testApp"
The ManageRepository utility successfully updated the runtime group "testApp" version "V2".
- 런타임 그룹 testApp의 V2 버전을 활성화하십시오.
다음 명령을 실행하십시오.
java com.ibm.pdq.tools.ManageRepository -activate runtimeGroup
-repositoryDriverClass com.ibm.db2.jcc.DB2Driver
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "myuser"
-repositoryPassword "mypwd"
-runtimeGroupId testApp
-runtimeGroupVersion V2
버전 V2를 활성화하면 버전 V1은 자동으로 비활성화됩니다. pureQuery Runtime은
저장소에 있는 런타임 그룹의 활성 버전에서 pureQuery 정보를 검색합니다.
명령의 출력은 다음 예와
유사합니다.
IBM Optim pureQuery Runtime 2.2.0.3 build 2.18.118
Licensed Materials - Property of IBM
5724-U16
(c) Copyright IBM Corp. 2006, 2010 All Rights Reserved.
========================================
Starting to process options: -activate "runtimeGroup" -runtimeGroupVersion "V2"
-repositoryURL "jdbc:db2://testserver.test.com:32706/sample"
-repositoryUsername "*****" -repositoryPassword "*****"
-runtimeGroupId "testApp"
The ManageRepository utility successfully activated the runtime group "testApp" version "V2".
결과
pureQuery Runtime 새로 고침 간격 등록 정보
propertiesRefreshInterval이 이 응용프로그램의 대해 2분으로
설정되었습니다. 2분이 지나면 갱신된
pureQuery Runtime 등록 정보가 적용됩니다. executionMode
등록 정보의 값을 STATIC으로 설정해서 응용프로그램은
SQL문을 정적으로 실행합니다.
런타임 그룹 testApp의
버전 V2에서는 pureQuery Runtime 등록 정보 captureMode가 ON으로
설정됩니다.
pureQuery Runtime은 여전히 응용프로그램에서 SQL 데이터를 캡처 중입니다.
응용프로그램에서 모든 SQL문을 캡처하지 않은 경우에는
캡처한 SQL 및 pureQueryXML 데이터를 추출하고,
SQL문의 병합, 구성 및 바인드 프로세스를 반복한 다음 갱신한 pureQueryXML 파일을
저장소에 업로드할 수 있습니다.
런타임 그룹
testApp의 버전 V1에서 pureQuery 데이터는 변경되지 않습니다.
V1 버전을 활성화하여 이전 pureQuery Runtime
설정으로 되돌릴 수 있습니다.
주: SQL문이 정적으로 실행되고 있는지
판별하는 한 가지 방법은 패키지를 삭제(drop)하는 것입니다. TESTAPP 패키지를 데이터베이스에서
삭제(drop)하면 응용프로그램은 pureQueryXML 파일에 나열된 SQL문을 실행할 수 없습니다.
StaticBinder 유틸리티를 pureQueryXML 파일과 함께 실행하여 패키지를
다시 작성하는 경우가 있습니다. 그러면 응용프로그램은 SQL문을 정적으로 실행합니다.
Tivoli® OMEGAMON®
XE for DB2®와 같은 데이터베이스 모니터링 도구를
z/OS®에서 사용하여 SQL이 정적으로
실행 중인지 검증할 수도 있습니다.
다음에 수행할 작업
이 태스크 세트는
pureQuery 클라이언트 최적화로 WebSphere®
응용프로그램을 구성하는 방식 및 데이터베이스의 저장소를 사용하여
pureQuery Runtime 등록 정보와 pureQuery 캡처 SQL 데이터를 저장하는 방법을
보여주었습니다.