ユースケース集¶
特定の作業の手順だけ知りたい読者向け。各ユースケースは独立完結、他に依存せず拾い読み可能。
収録ユースケース: 33 件(カテゴリ別に分類)
カテゴリ別目次¶
- DSNZPARM / 起動停止(4 件): uc-dsnzparm-edit, uc-iefssnxx-db2-add, uc-irlm-proc-deploy, uc-db2-startup
- バッファプール / 性能(4 件): uc-bufferpool-monitor, uc-bufferpool-resize, uc-explain-analyze, uc-runstats-initial
- ログ / アーカイブ(3 件): uc-log-active-create, uc-log-archive-config, uc-bsds-create
- DDF / 分散(3 件): uc-ddf-enable, uc-ddf-trusted-context-create, uc-display-status-check
- データ共用(2 件): uc-cfrm-policy-update, uc-functionlevel-activate
- バインド / アプリ(3 件): uc-bind-package-app, uc-applcompat-update, uc-installation-prereq
- ユーティリティ(6 件): uc-imagecopy-full, uc-load-flatfile, uc-reorg-tablespace, uc-tablespace-recover, uc-quiesce-point, uc-check-data
- セキュリティ(3 件): uc-grant-roles, uc-racf-acm-link, uc-audit-trace-start
- スキーマ / オブジェクト(2 件): uc-stogroup-create, uc-tablespace-pbg-create, uc-table-create, uc-index-create, uc-sqldi-model-train
本章の品質方針
全ユースケースは IBM Db2 13 for z/OS 公式マニュアル記載の事実・手順のみで構成。
DSNZPARM / 起動停止¶
DSNZPARM の編集と適用¶
ID: uc-dsnzparm-edit / カテゴリ: DSNZPARM
想定状況¶
CTHREAD / CONDBAT / IRLMRWT などのサブシステムパラメータを変更したい。
前提条件¶
- SDSNSAMP の編集権限
- DB2 サブシステム再起動の業務時間枠
詳細手順¶
- DSNTIJUZ をバックアップコピー
- 対象マクロセクション編集
- DSNTIJUZ サブミット
- 再起動
- 確認
検証¶
-DISPLAY GROUP DETAIL で起動状態 ACTIVE、関連 DISPLAY コマンドで反映確認。
バリエーション¶
緊急時は旧 DSNZPARM ロードモジュール名を -START DB2 PARM(DSNZPARM_OLD) で指定し、即時ロールバック。
注意点¶
DSNZPARM の多くは再起動必須。一部(DSN6FAC 系)は -STOP DDF → DSN6FAC 再アセンブル → -START DDF で部分反映可能。
関連ユースケース¶
uc-db2-startup, uc-functionlevel-activate
出典: S_DB2_Install
IEFSSNxx に Db2 サブシステムを追加¶
ID: uc-iefssnxx-db2-add / カテゴリ: DSNZPARM
想定状況¶
z/OS の IEFSSNxx に Db2 サブシステム(SSID と command prefix)を登録する。
詳細手順¶
- IEFSSNxx を ISPF EDIT
- IPL または
SETSSI ADD,SUBNAME=DB2A,INITRTN=DSN3INI,INITPARM='DSN3EPX,-DSN1,S'で動的反映 D SSI,ALLで確認
検証¶
D SSI,ALL 出力に DB2A 表示。
注意点¶
command prefix(例: -DSN1)は他サブシステムと重複しないよう設計。
関連ユースケース¶
uc-irlm-proc-deploy, uc-db2-startup
出典: S_DB2_Install, S_ZOS_MVS_Cmds
IRLM PROC のデプロイ¶
ID: uc-irlm-proc-deploy / カテゴリ: DSNZPARM
想定状況¶
新規 Db2 サブシステム用に IRLM (Internal Resource Lock Manager) STC を起動可能にする。
詳細手順¶
- DSN.V13R1.SDSNSAMP の DSNTIRLM サンプルを SYS1.PROCLIB(または site PROCLIB)にコピー
- PROC のパラメータ調整
S IRLMPROCで起動F IRLMPROC,STATUSで確認
検証¶
F IRLMPROC,STATUS で connected DB2 の有無、状態 UP。
関連ユースケース¶
出典: S_DB2_Install
Db2 サブシステム起動 / 停止¶
ID: uc-db2-startup / カテゴリ: DSNZPARM
想定状況¶
Db2 サブシステムを正規手順で起動・停止する。
詳細手順¶
- 起動
- メンテモード起動(特殊運用)
- 停止
- 強制停止(緊急時のみ)
検証¶
起動後 -DISPLAY THREAD(*)、-DISPLAY DDF、-DISPLAY DATABASE(*) RESTRICT で異常なし。
注意点¶
MODE(FORCE) は indoubt thread を発生させる可能性あり、再起動時に -RECOVER INDOUBT が必要となる場合がある。
関連ユースケース¶
出典: S_DB2_Cmds
バッファプール / 性能¶
バッファプール監視¶
ID: uc-bufferpool-monitor / カテゴリ: バッファプール
想定状況¶
性能チューニングのため BP の statistics を取得・観察したい。
詳細手順¶
- DETAIL モードで取得
- interval モード
- hit ratio 算出
- hit_ratio =
1 - (SYNC READ I/O + ASYNC READ I/O) / GETPAGE - 目標 90% 以上
検証¶
DSNB401I / DSNB420I / DSNB421I の値で BP 別状態確認。
関連ユースケース¶
出典: S_DB2_Cmds, S_DB2_Perf
バッファプール拡張¶
ID: uc-bufferpool-resize / カテゴリ: バッファプール
想定状況¶
hit ratio 低下を受け、BP1 の VPSIZE を 20000 → 50000 に拡張したい。
詳細手順¶
- 動的変更
- 確認
検証¶
数日後 hit ratio 改善を確認。
注意点¶
VPSIZE は DBM1 region 容量を消費。D ASM 等で仮想記憶状況確認。
関連ユースケース¶
出典: S_DB2_Cmds
EXPLAIN によるアクセスパス分析¶
ID: uc-explain-analyze / カテゴリ: 性能
想定状況¶
性能劣化した SQL の access path を確認、optimizer の判断を理解する。
前提条件¶
- PLAN_TABLE が存在(DSN.V13R1.SDSNSAMP の DSNTESC でひな形)
詳細手順¶
- EXPLAIN 実行
- 結果取得
- 判読
- ACCESSTYPE: I=index、R=tablespace scan、IN=in-list index access、M=multi-index、I1=one-fetch index
- MATCHCOLS: index 利用カラム数(多いほど selective)
- INDEXONLY=Y: data page アクセス不要(理想形)
検証¶
PLAN_TABLE の行が問題 SQL の戦略を反映していることを確認。
関連ユースケース¶
uc-runstats-initial, uc-index-create
出典: S_DB2_AppPgm, S_DB2_Perf
初回 RUNSTATS¶
ID: uc-runstats-initial / カテゴリ: 性能
想定状況¶
新規ロード or 大量更新後の表に RUNSTATS で統計取得する。
詳細手順¶
- JCL 例
- 実行・完了確認
- 統計確認
検証¶
STATSTIME が直近時刻、CARDF / NACTIVE が現実値に近い。
バリエーション¶
定期化は IBM Workload Automation 等でスケジュール。STATISTICS PROFILE で再現性確保(v12+)。
関連ユースケース¶
出典: S_DB2_Util
ログ / アーカイブ¶
アクティブログ作成¶
ID: uc-log-active-create / カテゴリ: ログ
詳細手順¶
- IDCAMS で VSAM linear dataset 作成(COPY1, COPY2 二重化)
- DSNJU003 (CHANGE LOG INVENTORY) で BSDS に登録
- DB2 起動 →
-DISPLAY LOGで確認
関連ユースケース¶
uc-log-archive-config, uc-bsds-create
出典: S_DB2_Admin
アーカイブログ設定¶
ID: uc-log-archive-config / カテゴリ: ログ
詳細手順¶
- DSN6ARVP マクロ更新
- DSNTIJUZ アセンブル → load 出力
- DB2 再起動
- 確認:
-DISPLAY ARCHIVE
検証¶
archive log 切替時に対象 dataset が DSN6ARVP で指定した PFX で作成。
関連ユースケース¶
uc-log-active-create, cfg-log-archive
出典: S_DB2_Admin
BSDS 作成・二重化¶
ID: uc-bsds-create / カテゴリ: ログ
詳細手順¶
- IDCAMS で VSAM KSDS 2 つ作成
- DSNJU003 で初期化(CRESTART)
- DSNTIJUZ の MSTR PROC の BSDS DD カードで両方指定
- DB2 起動
検証¶
DSNJU004(PRINT LOG MAP)両 BSDS で同一内容。
関連ユースケース¶
uc-log-active-create, inc-bsds-corrupt
出典: S_DB2_Admin
DDF / 分散¶
DDF 有効化¶
ID: uc-ddf-enable / カテゴリ: DDF
詳細手順¶
- PROFILE.TCPIP に PORT 予約
- DSNJU003 で BSDS の DDF 設定
- DSN6FAC で CMTSTAT=INACTIVE、IDTHTOIN=120
- DSNTIJUZ → load
-START DDF、-DISPLAY DDF DETAILで確認
関連ユースケース¶
出典: S_DB2_DDF
Trusted Context / Role の作成¶
ID: uc-ddf-trusted-context-create / カテゴリ: DDF
詳細手順¶
- ROLE 作成
- TRUSTED CONTEXT 作成
- 検証: 想定 IP からの接続で ROLE が effective
関連ユースケース¶
出典: S_DB2_Sec
サブシステム状態確認の定型¶
ID: uc-display-status-check / カテゴリ: DDF
詳細手順¶
- 基本状態
- データベース状態
- バッファプール
- ユーティリティ
検証¶
異常状態(RESTP/CHKP/COPY pending、QUEDBAT 増、active log >80%)が出ていない。
関連ユースケース¶
出典: S_DB2_Cmds
データ共用¶
CFRM Policy の更新¶
ID: uc-cfrm-policy-update / カテゴリ: データ共用
詳細手順¶
- 既存 policy 取得
- policy 更新(GBP サイズ拡張等)
- policy 活性化
- rebuild が必要なら
関連ユースケース¶
出典: S_DB2_DataSharing, S_ZOS_Sysplex
Function Level の活性化¶
ID: uc-functionlevel-activate / カテゴリ: データ共用
詳細手順¶
- 現状確認
- CATMAINT で catalog level 上昇(必要な場合)
- Function Level activation
- 確認
注意点¶
FL500 activate 後は Db2 12 への fallback 不可。事前 image copy + DR 計画必須。
関連ユースケース¶
出典: S_DB2_FuncLevels, S_DB2_WhatsNew
バインド / アプリ¶
業務 PACKAGE の BIND¶
ID: uc-bind-package-app / カテゴリ: バインド
詳細手順¶
- DBRM lib 確認
- BIND PACKAGE
- 必要なら BIND PLAN
- 確認
関連ユースケース¶
出典: S_DB2_Cmds, S_DB2_AppPgm
APPLCOMPAT 更新¶
ID: uc-applcompat-update / カテゴリ: バインド
詳細手順¶
- 対象 PACKAGE リスト
- REBIND
- テスト実行
注意点¶
新 APPLCOMPAT で deprecated 機能(旧構文)の SQL があると BIND 時に SQLCODE -8001 等で警告。テストで早期検出。
関連ユースケース¶
uc-functionlevel-activate, uc-bind-package-app
出典: S_DB2_AppPgm
移行 prerequisite チェック¶
ID: uc-installation-prereq / カテゴリ: バインド
詳細手順¶
- z/OS バージョン確認 Db2 13 は z/OS 2.4 以降必須。
- Db2 12 の到達 FL 確認 M510 到達済みが Db2 13 移行の前提。
- prerequisite product(RACF, Language Environment 等)の APAR / PTF 充当
- SMP/E APPLY/ACCEPT 完了
関連ユースケース¶
出典: S_DB2_Install, S_DB2_Migrate12to13
ユーティリティ¶
イメージコピー(FULL)¶
ID: uc-imagecopy-full / カテゴリ: ユーティリティ
詳細手順¶
//COPY EXEC PGM=DSNUTILB,PARM='DB2A,COPY01'
//SYSPRINT DD SYSOUT=*
//SYSCOPY1 DD DSN=DB2A.IC.PRODDB.TS01,DISP=(NEW,CATLG),
// SPACE=(CYL,(100,50))
//SYSIN DD *
COPY TABLESPACE PRODDB.TS01
SHRLEVEL CHANGE
COPYDDN(SYSCOPY1)
FULL YES
検証¶
SYSCOPY 行追加、ICTYPE='F'、DSNAME=image copy データセット。
関連ユースケース¶
uc-tablespace-recover, uc-quiesce-point
出典: S_DB2_Util
フラットファイルからの LOAD¶
ID: uc-load-flatfile / カテゴリ: ユーティリティ
詳細手順¶
//LOAD EXEC PGM=DSNUTILB,PARM='DB2A,LOAD01'
//INFILE DD DSN=USER1.DATA.TXT,DISP=SHR
//SYSIN DD *
LOAD DATA INDDN INFILE
INTO TABLE PRODSCH.TAB1
RESUME YES
LOG NO
SHRLEVEL NONE
COPYDDN(SYSCOPY1)
入力ファイルフォーマット: 列定義に従って固定長 or POSITION(...) ... で詳細指定可能。
注意点¶
LOG NO は速いが COPY YES(または事後 COPY)必須、さもなければ TS が COPY pending。
関連ユースケース¶
出典: S_DB2_Util
REORG TABLESPACE(オンライン)¶
ID: uc-reorg-tablespace / カテゴリ: ユーティリティ
詳細手順¶
//REORG EXEC PGM=DSNUTILB,PARM='DB2A,REORG01'
//SYSIN DD *
REORG TABLESPACE PRODDB.TS01
SHRLEVEL CHANGE
LOG NO
COPYDDN(SYSCOPY1)
MAXRO 600
DRAIN_WAIT 60
RETRY 3
RETRY_DELAY 30
検証¶
REORG 後 SYSIBM.SYSTABLESPACE.AVGROWLEN / NACTIVE / DBSCANSEQ 改善、PCTFREE 回復。
関連ユースケース¶
出典: S_DB2_Util
テーブル空間の RECOVER(時点復旧)¶
ID: uc-tablespace-recover / カテゴリ: ユーティリティ
詳細手順¶
- 回復点(LRSN or RBA)特定
- RECOVER JCL
- CHECK DATA で整合性検証
- REBUILD INDEX(RECOVER 後 index は REBUILD pending になる)
関連ユースケース¶
uc-imagecopy-full, uc-quiesce-point, uc-check-data
出典: S_DB2_Util
QUIESCE 取得¶
ID: uc-quiesce-point / カテゴリ: ユーティリティ
詳細手順¶
//QUIESCE EXEC PGM=DSNUTILB,PARM='DB2A,QUIESCE01'
//SYSIN DD *
QUIESCE TABLESPACESET
TABLESPACE PRODDB.TS01
TABLESPACE PRODDB.TS02
WRITE YES
検証¶
SYSCOPY に ICTYPE='Q'(QUIESCE point)行が追加。
関連ユースケース¶
出典: S_DB2_Util
CHECK DATA¶
ID: uc-check-data / カテゴリ: ユーティリティ
詳細手順¶
//CHKDATA EXEC PGM=DSNUTILB,PARM='DB2A,CHK01'
//SYSIN DD *
CHECK DATA TABLESPACE PRODDB.TS01
SCOPE PENDING
DELETE YES FOR EXCEPTION IN PRODSCH.TAB1
USE PRODSCH.TAB1_EXC
検証¶
CHKP 解除、例外行は EXCEPTION TABLE に移動。
関連ユースケース¶
出典: S_DB2_Util
セキュリティ¶
GRANT による権限付与¶
ID: uc-grant-roles / カテゴリ: セキュリティ
詳細手順¶
-- グループ単位で SELECT/INSERT 付与
GRANT SELECT, INSERT ON TABLE PRODSCH.TAB1 TO PRODGRP;
-- パッケージ実行権限
GRANT EXECUTE ON PACKAGE PRODCOL.* TO PRODGRP;
-- 確認
SELECT GRANTEE, GRANTEETYPE, AUTHHOWGOT, ALTERAUTH, DELETEAUTH, INDEXAUTH,
INSERTAUTH, SELECTAUTH, UPDATEAUTH
FROM SYSIBM.SYSTABAUTH
WHERE TBCREATOR='PRODSCH' AND TTNAME='TAB1';
関連ユースケース¶
uc-racf-acm-link, uc-ddf-trusted-context-create
出典: S_DB2_Sec, S_DB2_SQLRef
RACF Access Control Module 連携¶
ID: uc-racf-acm-link / カテゴリ: セキュリティ
詳細手順¶
- RACF クラス活性化
- profile 定義
- DSNX@XAC を assemble(DSN.V13R1.SDSNSAMP の DSNXRXAC)
- DB2 再起動
検証¶
-DISPLAY などで authorization が RACF 経由になっている(外部から見ると透過的、Db2 内部で auth check 委譲)。
関連ユースケース¶
出典: S_DB2_RACF, S_DB2_Sec
AUDIT TRACE 起動¶
ID: uc-audit-trace-start / カテゴリ: セキュリティ
詳細手順¶
- 対象表に AUDIT 句
- AUDIT TRACE 起動
-DISPLAY TRACE(AUDIT)で active 確認- SMFPRMxx で type 102 記録対象に
- 必要なら DB2 再起動で恒久化(DSNZPARM の DEFAULT TRACE)
検証¶
SMF 102 レコードが SMF データセットに蓄積、reporting tool で集計可能。
関連ユースケース¶
出典: S_DB2_Sec
スキーマ / オブジェクト¶
STOGROUP 作成¶
ID: uc-stogroup-create / カテゴリ: スキーマ
詳細手順¶
または DASD volume 列挙:
関連ユースケース¶
出典: S_DB2_SQLRef
UTS-PBG テーブル空間作成¶
ID: uc-tablespace-pbg-create / カテゴリ: スキーマ
詳細手順¶
CREATE DATABASE PRODDB STOGROUP STO1 BUFFERPOOL BP4;
CREATE TABLESPACE TS01 IN PRODDB
USING STOGROUP STO1
PRIQTY 7200 SECQTY 7200
BUFFERPOOL BP4
LOCKSIZE ANY LOCKMAX SYSTEM
PCTFREE 5 FREEPAGE 0
COMPRESS YES
MAXPARTITIONS 256; -- UTS-PBG (Partition By Growth)
関連ユースケース¶
uc-stogroup-create, uc-table-create
出典: S_DB2_Admin, S_DB2_SQLRef
テーブル作成¶
ID: uc-table-create / カテゴリ: スキーマ
詳細手順¶
CREATE TABLE PRODSCH.TAB1 (
C1 INTEGER NOT NULL,
C2 VARCHAR(50) NOT NULL,
C3 DECIMAL(15,2),
C4 TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (C1)
) IN PRODDB.TS01;
関連ユースケース¶
uc-tablespace-pbg-create, uc-index-create
出典: S_DB2_SQLRef
索引作成¶
ID: uc-index-create / カテゴリ: スキーマ
詳細手順¶
CREATE INDEX PRODSCH.IX_TAB1_C2
ON PRODSCH.TAB1 (C2 ASC)
USING STOGROUP STO1
PRIQTY 720 SECQTY 720
BUFFERPOOL BP3;
検証¶
SELECT NAME, TBNAME, UNIQUERULE, COLCOUNT, FIRSTKEYCARDF
FROM SYSIBM.SYSINDEXES
WHERE TBNAME='TAB1';
注意点¶
clustering index(先に CREATE した unique index、または CLUSTER 句指定の index)が物理順を決定。
関連ユースケース¶
uc-runstats-initial, uc-explain-analyze
出典: S_DB2_SQLRef
SQL DI モデル学習¶
ID: uc-sqldi-model-train / カテゴリ: スキーマ
想定状況¶
Db2 13 FL501 で SQL Data Insights を有効化、業務表 PRODSCH.CUSTOMER に対して semantic similarity モデルを学習させる。
前提条件¶
- Function Level 501 以上活性
- SQL DI 用環境(Db2 Admin Tool / Web UI)
- 対象表に学習対象列の存在
詳細手順¶
- FL501 活性確認
- SQL DI UI で対象表選択 → 学習対象列指定
- 学習開始(裏で SYSAIDB / SYSAIOBJECTS 表が更新される)
- モデル状態確認
- AI 関数で動作確認
検証¶
AI_SIMILARITY が SQLCODE 0 で結果を返す(-20471 / -20472 が出たらモデル未準備)。
注意点¶
学習は CPU 集約的、本番影響を考慮した時間枠で実施。
関連ユースケース¶
出典: S_DB2_SQLDI
出典 ID は 08. 出典一覧 を参照。