[z/OS]

세션 지속성을 위해 DB2 테이블 구성

세션 데이터는 수집되고 DB2® 테이블에 저장됩니다. 세션 지속성을 위해 DB2를 사용 중인 경우에는 Application Server와 연관된 DB2 테이블을 작성하고 정의해야 합니다.

이 태스크 정보

세션 데이터를 수집하기 위해 DB2 테이블을 작성하려면 다음을 수행하십시오.

프로시저

  1. DB2 관리자가 세션 데이터를 저장하기 위해 DB2 데이터베이스 테이블을 작성하도록 하십시오. (DB2 데이터베이스 작성에 대한 자세한 정보는 DB2 UDB for OS/390® 및 z/OS® V7 관리 안내서를 참조하십시오.)

    데이터베이스 테이블이 작성되는 테이블스페이스는 낮은 레벨 잠금으로 정의되어야 합니다(LOCKSIZE ROW). 또한 세션 동안 테이블에 저장되는 오브젝트에 충분히 큰 페이지 크기가 있어야 합니다. 다음은 행 레벨 잠금이 지정되고 32K의 버퍼 풀 페이지 크기가 있는 테이블스페이스 정의의 예제입니다.

    CREATE DATABASE database_name
      STOGROUP SYSDEFLT
      CCSID EBCDIC;
    
    CREATE TABLESPACE tablespace_name IN database_name
      USING STOGROUP group_name
      PRIQTY 512
      SECQTY 1024
      LOCKSIZE ROW
      BUFFERPOOL BP32K;

    세션 관리자는 세션 데이터를 처리하기 위해 이 테이블스페이스 내에 정의된 DB2 테이블을 사용합니다. 이 테이블은 다음 형식이어야 합니다(구성 가능한 VARCHAR 길이는 예외임).

    CREATE TABLE database_name.table_name  (
      ID               VARCHAR(128) NOT NULL ,
      PROPID           VARCHAR(128) NOT NULL ,
      APPNAME          VARCHAR(64) ,
      LISTENERCNT      SMALLINT ,
      LASTACCESS       DECIMAL(19,0),
      CREATIONTIME     DECIMAL(19,0),
      MAXINACTIVETIME  INTEGER ,
      USERNAME         VARCHAR(256) ,
      SMALL            VARCHAR(3122)  FOR BIT DATA ,
      MEDIUM           VARCHAR(28869) FOR BIT DATA ,
      LARGE            BLOB(2097152),
      )
      IN database_name.tablespace_name;
    참고: VARCHAR에 지정된 길이 속성이 그 예제입니다. 이러한 값은 애플리케이션 이름의 길이와 각 세션 속성 이름을 처리하기에 충분히 커야 합니다.

    고유 색인은 이 테이블의 ID, PROPIDAPPNAME 열에 작성되어야 합니다. 다음은 색인 정의의 예제입니다.

    CREATE UNIQUE INDEX database_name.index_name ON
          database_name.table_name
          (ID     ASC,
          PROPID  ASC,
          APPNAME ASC);
    참고:
    1. 런타임 시에 세션 관리자는 소유 웹 애플리케이션이 배치되는 J2EE 서버의 ID를 사용하여 대상 테이블에 액세스합니다. 지속적 세션을 사용하도록 구성된 모든 웹 컨테이너에는 제목 데이터베이스 테이블에 대한 읽기 및 업데이트 액세스 둘 모두가 있어야 합니다.
    2. HTTP 세션 처리는 데이터베이스 교착 상태를 피하기 위해 CREATE INDEX문을 사용하여 정의된 색인을 사용합니다. 예를 들어, 상대적으로 작은 테이블 크기가 데이터베이스에 정의된 일부 상황에서는 DB2는 이 색인을 사용하지 않기로 결정할 수도 있습니다. 색인이 사용되지 않으면 데이터베이스 교착 상태가 발생할 수 있습니다. 이 상황이 발생하면 색인에 필요한 공간을 계산하는 방법과 사용 중인 테이블의 크기를 이에 맞게 조정하는 방법에 대한 권장사항은 사용 중인 DB2의 버전의 DB2 관리 안내서를 참조하십시오.
    3. 세션 데이터베이스 테이블을 효율적으로 사용하고 여기에 액세스할 때 교착 상태를 피하기 위해서는 DB2를 조정해야 할 수도 있습니다. DB2 관리자는 사용 중인 DB2의 버전 조정에 대한 특정 정보에 대해서는 DB2 관리 안내서를 참조해야 합니다.

    큰 오브젝트(LOB) 테이블스페이스를 정의해야 하고 해당 테이블스페이스 내에 보조 테이블을 정의해야 합니다. 다음은 LOB 테이블스페이스 정의의 예제입니다.

    CREATE LOB TABLESPACE LOB_tablespace_name IN database_name
        BUFFERPOOL BP32K
        USING STOGROUP group_name
        PRIQTY 512
        SECQTY 1024
        LOCKSIZE LOB;
    
    CREATE AUX TABLE database_name.aux_table_name
        IN database_name.LOB_tablespace_name
        STORES database_name.table_name
        COLUMN LARGE;

    이 보조 테이블을 위해 색인을 작성해야 합니다. 다음은 색인 정의의 예제입니다.

    CREATE INDEX database_name.aux_index_name ON 
          database_name.aux_table_name;
  2. DB2 관리자가 서버 리젼이 실행 중인 z/OS 사용자 ID에 이 DB2 테이블에 대한 적합한 액세스를 부여하도록 하십시오. 예를 들어, 다음 명령을 실행하여 서버 리젼이 실행 중인 z/OS userID CBASRU1에 데이터베이스 SESSDB에 포함된 테이블 SESSIONS에 대한 액세스를 부여하십시오.
    GRANT ALL ON SESSDB.SESSIONS TO CBASRU1;
  3. 세션 지속성을 위해 DB2 테이블을 구성하십시오..

주제 유형을 표시하는 아이콘 태스크 주제



시간소인 아이콘 마지막 업데이트 날짜: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tprs_db2tzos
파일 이름:tprs_db2tzos.html