データベースの同一資源に対して、アプリケーションおよびRDBコマンドが同時に動作した場合に、それぞれの処理を矛盾なく実行するために、Symfoware/RDBが排他制御を行います。
表C.1 Symfoware/RDBの各機能の占有の資源と占有の強さ(ディクショナリ資源の占有)および表C.3 Symfoware/RDBの各機能の占有の資源と占有の強さ(データベース資源の占有)に、各機能が排他する資源と排他の強さを示します。
また、表C.2 占有の強さの関係に排他の強さの関係を示します。
各機能はオプションや入力データで指定された資源を排他して処理を行います。資源を排他する期間は次のとおりです。
アプリケーション
- ディクショナリ資源:
アプリケーションの最初のSQL文発行時点から、アプリケーションの終了(コネクション切断)まで
- データベース資源:
トランザクションの開始から終了まで
RDBコマンド
- ディクショナリ資源:
コマンド投入時点から応答メッセージの出力まで
- データベース資源:
トランザクションの開始から終了まで
資源の占有を行うことによって、各機能を同時に実行した場合、資源の占有エラーとなったり、資源の占有が解除されるまで待ちに入ったりする場合があります。
同一資源に対して各機能を同時に実行した場合の振る舞いについて、表C.4 Symfoware/RDBの同一資源に対する各機能の同時実行時の振る舞いに示します。ただし、以下の処理については、資源の占有に関係なく同一資源に対して他の機能と同時に実行することはできません。
データベースのリカバリ(rdbrcvコマンド、rdbadjrcvコマンド、rdbexspcコマンド、rdbxarcvコマンド、rdbmrrcvコマンド)
監査ログデータベースのリカバリ(rdbrcvadtコマンド)
ディクショナリ操作(rdbcrdicコマンド、rdbaldicコマンド、rdbgcdicコマンド、Symfoware/RDB停止中のrdbrcvdicコマンド、rdbscldirコマンド)
rdbdmpdicコマンド、rdbprdicコマンドおよびSymfoware/RDB運用中のrdbrcvdicコマンドは、他の機能と同時実行可能ですが、定義操作との同時実行においては占有エラーとなる場合があります。
表C.1 Symfoware/RDBの各機能の占有の資源と占有の強さ(ディクショナリ資源の占有)機能 | コマンド | 占有資源 |
---|
論理 | 格納 | 物理 | 利用者認可 識別子 | ROLE |
---|
DB | SCH | SEQ | TBL | RTN | TRG | DSO | DSO (IX) | DSI | DSI (IX) | SCOP | DBS |
---|
データベース定義 | rdbddlex | CREATE DATABASE | EX | - | - | - | - | - | - | - | - | - | - | - | - | - |
データベース消去 | rdbddlex | DROP DATABASE | EX | - | - | - | - | - | - | - | - | - | - | - | - | - |
スキーマ定義 | rdbddlex | CREATE SCHEMA | SH | EX | - | - | - | - | - | - | - | - | - | - | - | - |
スキーマ消去 | rdbddlex | DROP SCHEMA (CASCADEなし) | SH | EX | - | - | - | - | - | - | - | - | - | - | - | - |
DROP SCHEMA (CASCADEあり) | SH | EX | - | EX | EX | EX | EX | EX | EX | EX | EX | SH | EX | - |
順序定義 | rdbddlex | CREATE SEQUENCE | SH | SH | EX | - | - | - | - | - | - | - | - | - | - | - |
順序削除 | rdbddlex | DROP SEQUENCE | SH | SH | EX | - | - | - | - | - | - | - | - | - | - | - |
表定義 | rdbddlex | CREATE TABLE | SH | SH | - | EX | - | - | - | - | - | - | - | - | - | - |
表消去 | rdbddlex | DROP TABLE (CASCADEなし) | SH | SH | - | EX | - | - | - | - | - | - | - | - | - | - |
DROP TABLE (CASCADEあり) | SH | SH | - | EX | EX | EX | EX | EX | EX | EX | EX | SH | EX | - |
ビュー定義 | rdbddlex | CREATE VIEW | SH | SH | - | EX | - | - | - | - | - | - | - | - | - | - |
ビュー消去 | rdbddlex | DROP VIEW | SH | SH | - | EX | - | - | - | - | - | - | - | - | - | - |
ルーチン定義 | rdbddlex | CREATE PROCEDURE | SH | SH | - | - | EX | - | - | - | - | - | - | - | - | - |
CREATE FUNCTION | SH | SH | - | - | EX | - | - | - | - | - | - | - | - | - |
ルーチン削除 | rdbddlex | DROP PROCEDURE | SH | SH | - | - | EX | - | - | - | - | - | - | - | - | - |
DROP FUNCTION | SH | SH | - | - | EX | - | - | - | - | - | - | - | - | - |
トリガ定義 | rdbddlex | CREATE TRIGGER | SH | SH | - | EX/SH (注1) | - | EX | - | - | - | - | - | - | - | - |
トリガ削除 | rdbddlex | DROP TRIGGER | SH | SH | - | EX/SH (注1) | - | EX | - | - | - | - | - | - | - | - |
表定義変更 | rdbddlex | ALTER TABLE | SH | SH | - | EX (注2) | - | - | EX (注2) | EX (注2) | EX (注2) | EX (注2) | - | - | - | - |
表交換 | rdbddlex | SWAP TABLE | SH | SH | - | EX | - | - | EX | EX | EX | EX | - | - | - | - |
格納構造定義 | rdbddlex | CREATE DSO | SH | SH | - | EX | - | - | EX | - | - | - | - | - | - | - |
CREATE DSO (IX) | SH | SH | - | EX | - | - | EX | EX | EX | - | - | - | - | - |
CREATE DSI | SH | SH | - | EX (注3) | - | - | EX (注3) | - | EX | - | EX (注3) | SH | EX (注3) | - |
CREATE DSI (IX) | SH | SH | - | EX (注3) | - | - | EX (注3) | EX (注3) | SH | EX | - | SH | - | - |
CREATE SCOPE | SH | - | - | - | - | - | - | - | EX | - | EX | - | - | - |
格納構造消去 | rdbddlex | DROP DSO (CASCADEなし) | SH | SH | - | EX | - | - | EX | - | - | - | - | - | - | - |
DROP DSO (CASCADEあり) | SH | SH | - | EX | - | - | EX | EX | EX | EX | EX | SH | EX | - |
DROP DSO (IX) (CASCADEなし) | SH | SH | - | EX | - | - | EX | EX | - | - | - | - | - | - |
DROP DSO (IX) (CASCADEあり) | SH | SH | - | EX | - | - | EX | EX | - | EX | - | SH | - | - |
DROP DSI (CASCADEなし)(注4) | SH | SH | - | EX | - | - | EX | - | EX | - | EX | SH | EX | - |
DROP DSI (CASCADEあり)(注4) | SH | SH | - | EX | - | - | EX | - | EX | EX | EX | SH | EX | - |
DROP DSI (IX)(注4) | SH | SH | - | EX | - | - | EX | EX | SH | EX | EX | SH | EX | - |
DROP SCOPE | SH | - | - | - | - | - | - | - | - | - | EX | - | EX | - |
DSI変更 | rdbddlex | ALTER DSI | SH | SH | - | EX (注5) | - | - | EX (注5) | - | EX (注5) | - | - | SH | - | - |
スコープ適用 | rdbddlex | APPLY SCOPE | SH | - | - | - | - | - | - | - | - | - | EX | - | EX | - |
スコープ解除 | rdbddlex | RELEASE SCOPE | SH | - | - | - | - | - | - | - | - | - | EX | - | EX | - |
スペース定義 | rdbddlex | CREATE DBS | SH | - | - | - | - | - | - | - | - | - | - | EX | - | - |
スペース消去 | rdbddlex | DROP DBS | SH | - | - | - | - | - | - | - | - | - | - | EX | - | - |
権限情報定義 | rdbddlex | GRANT (SCH) | SH | MOD | - | - | - | - | - | - | - | - | - | - | SH | MOD |
GRANT (TBL) | SH | SH | - | MOD | - | - | - | - | - | - | - | - | SH | MOD |
GRANT (DBS) | SH | - | - | - | - | - | - | - | - | - | - | MOD | SH | MOD |
GRANT (ROUTINE) | SH | SH | - | - | MOD | - | - | - | - | - | - | - | SH | MOD |
GRANT (TRG) | SH | SH | - | - | - | MOD | - | - | - | - | - | - | SH | MOD |
GRANT (SEQUENCE) | SH | SH | MOD | - | - | - | - | - | - | - | - | - | SH | MOD |
GRANT(ROLE) | - | - | - | - | - | - | - | - | - | - | - | - | SH | MOD |
権限情報削除 | rdbddlex | REVOKE (SCH) | SH | MOD | - | - | - | - | - | - | - | - | - | - | SH | MOD |
REVOKE (TBL) | SH | SH | - | MOD | - | - | - | - | - | - | - | - | SH | MOD |
REVOKE (DBS) | SH | - | - | - | - | - | - | - | - | - | - | MOD | SH | MOD |
REVOKE (ROUTINE) | SH | SH | - | - | MOD | - | - | - | - | - | - | - | SH | MOD |
REVOKE (TRG) | SH | SH | - | - | - | MOD | - | - | - | - | - | - | SH | MOD |
REVOKE (SEQUENCE) | SH | SH | MOD | - | - | - | - | - | - | - | - | - | SH | MOD |
REVOKE(ROLE) | - | - | - | - | - | - | - | - | - | - | - | - | SH | MOD |
利用者定義 | rdbddlex | CREATE USER | - | - | - | - | - | - | - | - | - | - | - | - | EX | - |
利用者変更 | rdbddlex | ALTER USER | - | - | - | - | - | - | - | - | - | - | - | - | MOD | - |
利用者削除 | rdbddlex | DROP USER | - | - | - | - | - | - | - | - | - | - | - | - | EX | - |
ロール定義 | rdbddlex | CREATE ROLE | - | - | - | - | - | - | - | - | - | - | - | - | - | EX |
ロール削除 | rdbddlex | DROP ROLE | - | - | - | - | - | - | - | - | - | - | - | - | - | EX |
パラメタ設定 | rdbddlex | SET SYSTEM PARAMETER | - | - | - | - | - | - | - | - | - | - | - | - | SH | MOD |
最適化情報の設定 | rdbddlex | SET STATISTICS (TBL) | SH | SH | - | SH | - | - | MOD | MOD | MOD | MOD | - | SH | - | - |
SET STATISTICS (DSO IX) | SH | SH | - | SH | - | - | - | MOD | - | SH | - | SH | - | - |
SET STATISTICS (DSI) | SH | SH | - | SH | - | - | - | - | MOD | - | - | SH | - | - |
SET STATISTICS (DSI IX) | SH | SH | - | SH | - | - | - | - | - | MOD | - | SH | - | - |
最適化情報の表示 | rdbddlex | PRINT STATISTICS (TBL) | SH | SH | - | SH | - | - | SH | SH | SH | SH | - | SH | - | - |
PRINT STATISTICS (DSO IX) | SH | SH | - | SH | - | - | - | SH | - | SH | - | SH | - | - |
PRINT STATISTICS (DSI) | SH | SH | - | SH | - | - | - | - | SH | - | - | SH | - | - |
PRINT STATISTICS (DSI IX) | SH | SH | - | SH | - | - | - | - | - | SH | - | SH | - | - |
一時表定義 | rdbddlex | CREATE GLOBAL TEMPORARY TABLE | SH | SH | - | EX | - | - | - | - | - | - | - | SH | - | - |
一時表インデックス定義 | rdbddlex | CREATE INDEX | SH | SH | - | EX | - | - | - | - | - | - | - | SH | - | - |
DSI初期化 | rdbfmt | DSI | SH | SH | - | SH | - | - | - | - | SH | SH | - | SH | - | - |
DSI (IX) | SH | SH | - | SH | - | - | - | - | SH | SH | - | SH | - | - |
データロード | rdbsloader | DSI | SH | SH | - | SH | - | - | SH | SH | SH | SH | - | SH | - | - |
DSI (IX) | SH | SH | - | SH | - | - | SH | SH | SH | SH | - | SH | - | - |
データアンロード | rdbunl | DSI | SH | SH | - | SH | - | - | - | - | SH | - | - | SH | - | - |
rdbunlx | DSI | SH | SH | - | SH | - | - | - | - | SH | - | - | SH | - | - |
rdbunlsql | SH | SH | - | SH | - | - | SH | SH | SH | SH | SH | - | SH | - |
データベース再編成 | rdbgcdsi | DSI | SH | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
DSI (IX) | SH | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
データベースの更新 | rdbupt | SH | SH | - | SH | - | - | SH | SH | SH | SH | SH | - | SH | - |
rdbsaloader | SH | SH | - | SH | - | - | SH | SH | SH | SH | - | SH | - | - |
rdbsuloader | SH | SH | - | SH | - | - | SH | SH | SH | SH | - | SH | - | - |
自動DSI領域拡張 | rdbalmdsi | DSI | SH | - | - | - | - | - | - | - | SH | - | - | - | - | - |
DSI (IX) | SH | - | - | - | - | - | - | - | - | SH | - | - | - | - |
DSIの除外 | rdbexdsi | DSI | - | - | - | - | - | - | - | - | SH | - | - | - | - | - |
最適化情報更新 | rdbups | TBL | SH | SH | - | SH | - | - | MOD | MOD | MOD | MOD | - | SH | - | - |
DSO | SH | SH | - | SH | - | - | MOD | - | SH | - | - | SH | - | - |
DSO (IX) | SH | SH | - | SH | - | - | - | MOD | - | SH | - | SH | - | - |
DSI | SH | SH | - | SH | - | - | - | - | MOD | - | - | SH | - | - |
DSI (IX) | SH | SH | - | SH | - | - | - | - | - | MOD | - | SH | - | - |
管理情報印刷 | rdbprt | 定義情報 | SH | SH | - | SH | - | - | - | - | - | - | - | - | - | - |
スペース情報印刷 | rdbspcinf | SH | - | - | - | - | - | - | - | SH | SH | - | SH | - | - |
DSI使用状況出力 | rdbudsi | DSI | SH | - | - | - | - | - | - | - | SH | - | - | - | - | - |
DSI (IX) | SH | - | - | - | - | - | - | - | - | SH | - | - | - | - |
退避データ作成 | rdbdmp | DSI指定 | - | - | - | - | - | - | - | - | SH | - | - | - | - | - |
データベースリカバリ | rdbrcv | DSI指定 | - | - | - | - | - | - | - | - | MOD | - | - | - | - | - |
DBS指定 | - | - | - | - | - | - | - | - | MOD | - | - | SH | - | - |
rdbadjrcv | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
アーカイブ管理 | rdblog | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
運用情報取得 | rdbinf | DIC指定 | SH | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
DSI指定 | - | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
DBS指定 | SH | - | - | - | - | - | - | - | SH | SH | - | SH | - | - |
実行情報表示 | rdbps | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
資源占有情報表示 | rdblkinf | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
退避媒体情報表示 | rdbdvinf | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
利用規定設定 | rdbrtr | DIC指定 | - | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
DSI指定 | - | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
DBS指定 | - | - | - | - | - | - | - | - | SH | SH | - | SH | - | - |
利用規定解除 | rdbrls | DIC指定 | - | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
DSI指定 | - | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
DBS指定 | - | - | - | - | - | - | - | - | SH | SH | - | SH | - | - |
アクセス禁止設定 | rdbinh | DSI指定 | - | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
DBS指定 | - | - | - | - | - | - | - | - | SH | SH | - | SH | - | - |
アクセス禁止解除 | rdbpmt | DSI指定 | - | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
DBS指定 | - | - | - | - | - | - | - | - | SH | SH | - | SH | - | - |
プリプロセッサ | sqlpc/sqlpcob | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
データベーススペースの切離しおよび接続 | rdbexspc | mdetach | - | - | - | - | - | - | - | - | - | - | - | MOD | - | - |
mattach | - | - | - | - | - | - | - | - | - | - | - | MOD | - | - |
mp | - | - | - | - | - | - | - | - | ― | - | - | SH | - | - |
RDBディレクトリファイルの切離しおよび接続 | rdbexdir | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
監査ログデータの退避 | rdbunladt | -mb -mc | SH | SH | - | SH | - | - | - | - | SH | - | - | SH | - | - |
監査ログエレメントの初期化 | rdbunladt | -mb -mf | SH | SH | - | SH | - | - | - | - | SH | - | - | SH | - | - |
監査ログデータベース定義 | rdbaudit | -c | EX | EX | - | EX | - | - | EX | EX | EX | EX | - | EX | - | - |
監査ログデータベース削除 | rdbaudit | -d | EX | EX | - | EX | - | - | EX | EX | EX | EX | - | EX | - | - |
監査ログエレメントの追加 | rdbaudit | -a | SH | SH | - | EX | - | - | EX | EX | EX | EX | - | EX | - | - |
監査ログエレメントの切替 | rdbaudit | -e | - | - | - | - | - | - | - | - | MOD | MOD | - | MOD | - | - |
監査ログエレメントの表示 | rdbaudit | -v | SH | - | - | - | - | - | - | - | SH | SH | - | SH | - | - |
監査ログエレメントのリカバリ | rdbrcvadt | - | - | - | - | - | - | - | - | MOD | - | - | SH | - | - |
アプリケーション(動的SQL文あり) | - | SH | SH | SH | SH | SH | SH | SH | SH | SH | SH | SH | - | SH | SH |
アプリケーション(動的SQL文なし) | - | SH | SH | SH | SH | SH | SH | SH | SH | SH | SH | SH | - | SH | SH |
RDBの起動 | rdbstart | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
RDBの停止 | rdbstop | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
RDBの動作確認 | rdbchksanity | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
共用バッファプール | 開設 | rdbcrbf | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
閉鎖 | rdbdrbf | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
対応登録 | rdbconbf | SH | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
対応解除 | rdbdisbf | SH | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
表示 | rdbprtbf | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
DSIの常駐/常駐解除 | rdbresident | SH | - | - | - | - | - | - | - | SH | SH | - | - | - | - |
インデックス縮退 | rdbalidx | SH | - | - | - | - | - | - | - | - | EX | - | - | - | - |
定義情報のメモリ展開 | rdbpldic | SH | SH | - | SH | - | - | - | - | - | - | - | - | - | - |
RDBディクショナリの作成 | rdbcrdic | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
RDBディクショナリの容量拡張 | rdbaldic | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
RDBディクショナリの再配置 | rdbgcdic | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
RDBディクショナリの領域の状況表示 | rdbprdic | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
RDBディクショナリのリカバリ | rdbrcvdic | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
RDBディクショナリの退避データ作成 | rdbdmpdic | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
性能監視 | rdbsar | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
システムの性能情報の表示 | rdbpmreport | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
SQL文、アクセスプランの表示 | rdbpmsqllist | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
パフォーマンスモニタの環境設定 | rdbpmsetup | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
リカバリポイントの設定 | rdbsetrp | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
コネクションの回収リカバリ・状態の表示 | rdbterm | - | - | - | - | - | - | - | - | - | - | - | - | SH | - |
rdbcninf | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
SQL文の実行 | rdbexecsql | SH | SH | - | SH | SH | SH | SH | SH | SH | SH | SH | - | SH | - |
XA配下のリカバリ | rdbxarcv | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
XA配下のXID一覧表示 | rdbprxid | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
RDBメッセージの表示(注6) | rdbprtmsg | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
リソースの登録、変更、表示、削除 | rdbhsrsc | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
ユーザロググループの偏在先の情報表示 | rdbloggroup | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
ホットスタンバイの宣言・プレオープン情報出力 | rdbhsuty | SH | - | - | - | - | - | - | - | SH | - | SH | - | - | - |
Advanced Backup Controllerでの退避データの取得 | rdbmrdmp | - | - | - | - | - | - | - | - | MOD | MOD | - | MOD | - | - |
Advanced Backup Controllerでバックアップしたリカバリ制御ファイルの表示 | rdbmrinf | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
Advanced Backup Controllerでの退避データによるリカバリ | rdbmrrcv | - | - | - | - | - | - | - | - | MOD | MOD | - | MOD | - | - |
ユーザロググループ用RDBディレクトリファイルの運用 | rdbscldir | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
Textアダプタ定義の登録、削除、登録内容の表示 | rdbtadef | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
Accela BizSearchインデックス作成用定義ファイルの作成 | rdbtais | -r all | SH | SH | - | SH | - | - | - | - | SH | - | - | SH | - | - |
-r diff | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
DB : データベース
SCH : スキーマ
SEQ:順序
TBL : 実表
RTN : ルーチン
TRG : トリガ
DSO : 表のDSO
DSO(IX): インデックスのDSO
DSI : 表のDSI
DSI(IX): インデックスのDSI
SCOP : スコープ
DBS : データベーススペース
DIC : RDBディクショナリ
SH : 共有モード
MOD : 弱共有モード
EX : 非共有モード
- : 排他対象外
注1) ON句で指定した表をEXで排他します。被トリガSQL文で指定した表をSHで排他します。
注2) rdbddlexコマンドの準備モード(lオプション)で列定義を追加した場合は、MODになります。
注3) rdbddlexコマンドの準備モード(lオプション)で、分割運用を適用する表のDSIを定義した場合、またはインデックスのDSIを定義した場合は、MODになります。
注4) デフォルトバッファや共有バッファと関連付いているDSIは関連付けを解除しないと削除できません。
DSIとバッファの関連付けの解除は以下の方法で実施してください。
利用しているアプリケーションのコネクションを切断する。(デフォルトバッファのみ有効)
rdbdisbufコマンドを実行する。(共有バッファのみ有効)
Symfoware/RDBを停止・再起動する。(デフォルトバッファ・共有バッファともに有効)
注5) 動的定義変更を行うためにrdbexdsiコマンドですべての人に対してDSIが運用から除外されている場合はSHとなります。
注6) SolarisおよびLinuxで使用可能です。
表C.2 占有の強さの関係 | 後続 |
---|
EX | MOD | SH |
---|
先行 | EX | × | × | × |
MOD | × | × | ○ |
SH | × | ○ | ○ |
○:2つのプロセス間で、同一資源の多重処理が許されます。
×:2つのプロセス間で、同一資源の多重処理が許されません。
表C.3 Symfoware/RDBの各機能の占有の資源と占有の強さ(データベース資源の占有)機能 | コマンド | 占有資源(注) |
---|
表 | インデックス |
---|
アプリケーション(データベースのデータ操作) | 参照処理 | SH | SH |
更新処理 | EX | EX |
DSI初期化 | rdbfmt | DSI | EX | EX |
DSI(IX) | SH | EX |
データロード | rdbsloader | DSI | EX | EX |
DSI(IX) | SH | EX |
データベース更新 | rdbsuloader | EX | EX |
rdbsaloader | EX | EX |
rdbupt | EX | EX |
データアンロード | rdbunl | DSI | SH | - |
rdbunlx | DSI | SH | - |
rdbunlsql | SH | SH |
データベース再編成 | rdbgcdsi | DSI | EX | EX |
DSI(IX) | SH | EX |
最適化情報更新 | rdbups | TBL | SH | - |
DSO | SH | - |
DSO(IX) | - | SH |
DSI | SH | - |
DSI(IX) | - | SH |
監査ログデータの退避 | rdbunladt | DSI | SH | - |
監査ログエレメントの初期化 | rdbunladt | DSI | EX | EX |
注)占有資源は以下のようになります。
アプリケーションで実行した場合:動作環境ファイルの実行パラメタ(DSO_LOCKまたはR_LOCK)の設定により、DSI、ページ、レコードのいずれかになります。
ユーティリティコマンドで実行した場合:DSIになります。
表C.4 Symfoware/RDBの同一資源に対する各機能の同時実行時の振る舞い | 後行機能 |
---|
定義操作のコマンド | データ操作のアプリケーション | データ操作のユーティリティコマンド | 運用操作のコマンド |
---|
先行機能 | 定義操作のコマンド | × 占有待ち | × 占有エラー | × 占有エラー | × 占有エラー |
データ操作のアプリケーション | × 占有エラー | △ 占有待ち | △ 占有エラー(注4) | ○ (注1) |
データ操作のユーティリティコマンド | × 占有エラー | △ 占有待ち (注3)(注4) | △ 占有エラー | △ 占有エラー (注2) |
運用操作のコマンド | × 占有エラー | ○ | △ 占有エラー (注2) | ○ (注5)(注6) |
○ : 同時実行可能
△ : 参照/参照は同時実行可能。参照/更新は同時実行不可
× : 同時実行不可
注1) アプリケーションが更新処理のトランザクション中の場合、rdbdmpコマンド、rdbsetrpコマンドおよびrdbmrdmpコマンドは、トランザクション終了まで待ちになります。アプリケーションが参照処理または更新処理のトランザクション中の場合、rdbrtrコマンドおよびrdbrlsコマンドは、占有エラーとなります。
注2) rdbdmpコマンドおよびrdbmrdmpコマンドは更新系のユーティリティコマンドと同時に実行できません。
注3) 先行が更新系のユーティリティコマンドの場合、後行のアプリケーションは、利用規定されている旨のエラーとなります。更新系のユーティリティコマンドとは、rdbfmtコマンド、rdbsloaderコマンド、rdbsaloaderコマンド、rdbsuloaderコマンド、rdbgcdsiコマンド、rdbunladtコマンド(mbオプションまたはmfオプション)を示します。
注4) rdbudsiコマンドおよびrdbupsコマンド(cオプション)はデータ操作のアプリケーションと同時に実行可能です。
注5) 以下の場合、同時実行は不可となります。
| 後行コマンド |
---|
rdbinh -i | rdbpmt -i | rdbrtr -i | rdbrls -i | rdbinf -i | rdbexdsi -i |
---|
先行コマンド | rdbinh -i | × | × | × | × | × | × |
rdbpmt -i | × | × | × | × | × | × |
rdbrtr -i | × | × | × | × | × | × |
rdbrls -i | × | × | × | × | × | × |
rdbinf -i | × | × | × | × | ○ | × |
rdbexdsi -i | × | × | × | × | × | × |
| 後行コマンド |
---|
rdbinh -p | rdbpmt -p | rdbrtr -p | rdbrls -p | rdbinf -p | rdbexdsi -p |
---|
先行コマンド | rdbinh -p | × | × | × | × | × | × |
rdbpmt -p | × | × | × | × | × | × |
rdbrtr -p | × | × | × | × | × | × |
rdbrls -p | × | × | × | × | × | × |
rdbinf -p | × | × | × | × | × | × |
rdbexdsi -p | × | × | × | × | × | × |
| 後行コマンド |
---|
rdbinf -i |
---|
先行コマンド | rdbgcdsi -E(容量拡張) | × |
| 後行コマンド |
---|
rdbgcdsi -E(容量拡張) |
---|
先行コマンド | rdbinf -i | × |
| 後行コマンド |
---|
rdbinf -p |
---|
先行コマンド | rdbgcdsi -c(拡張域返却) | × |
| 後行コマンド |
---|
rdbgcdsi -c(拡張域返却) |
---|
先行コマンド | rdbinf -p | × |
| 後行コマンド |
---|
rdbinf -i | rdbinf -p |
---|
先行コマンド | rdbfmt -c(拡張域返却) | × | × |
| 後行コマンド |
---|
rdbfmt -c(拡張域返却) |
---|
先行コマンド | rdbinf -i | × |
rdbinf -p | × |
| 後行コマンド |
---|
rdbrtr -z | rdbrls -z | rdbinf -z |
---|
先行コマンド | rdbgcdic | × | × | × |
| 後行コマンド |
---|
rdbgcdic |
---|
先行コマンド | rdbrtr -z | × |
rdbrls -z | × |
rdbinf -z | × |
| 後行コマンド |
---|
rdbudsi |
---|
先行コマンド | データ更新UTYコマンド | × |
| 後行コマンド |
---|
データ更新UTYコマンド |
---|
先行コマンド | rdbudsi | × |
| 後行コマンド |
---|
rdbgcdsi -E | rdbfmt -c |
---|
先行コマンド | rdbresident | × | × |
| 後行コマンド |
---|
rdbresident |
---|
先行コマンド | rdbgcdsi -E | × |
rdbfmt -c | × |
注6) 以下のコマンドで、pオプションで指定したDBスペースに含まれるDSIをiオプションで指定した場合、以下のとおり、同時実行は、不可となります。
| 後行コマンド |
---|
rdbinh -i | rdbpmt -i | rdbrtr -i | rdbrls -i | rdbinf -i | rdbexdsi -i |
---|
先行コマンド | rdbinh -p | × | × | × | × | × | × |
rdbpmt -p | × | × | × | × | × | × |
rdbrtr -p | × | × | × | × | × | × |
rdbrls -p | × | × | × | × | × | × |
rdbinf -p | × | × | × | × | ○ | × |
rdbexdsi -p | × | × | × | × | × | × |
| 後行コマンド |
---|
rdbinh -p | rdbpmt -p | rdbrtr -p | rdbrls -p | rdbinf -p | rdbexdsi -p |
---|
先行コマンド | rdbinh -i | × | × | × | × | × | × |
rdbpmt -i | × | × | × | × | × | × |
rdbrtr -i | × | × | × | × | × | × |
rdbrls -i | × | × | × | × | × | × |
rdbinf -i | × | × | × | × | ○ | × |
rdbexdsi -i | × | × | × | × | × | × |
表C.4 Symfoware/RDBの同一資源に対する各機能の同時実行時の振る舞いで示した各機能の詳細を以下に示します。
- 定義操作
rdbddlexコマンド、rdbexecsqlコマンドまたはアプリケーションによる、Symfoware/RDBの各資源の定義/定義更新/定義削除の処理です。
rdbalidxコマンドはこの分類に属します。また、監査ログデータベースの作成/削除を行うrdbauditコマンドもこの分類に属します。
- データ操作のアプリケーション
SQL文によりデータベースのデータをアクセスするアプリケーションの処理です。
rdbuptコマンド、rdbunlsqlコマンドおよびrdbexecsqlコマンドはこの分類に属します。
- データ操作のユーティリティコマンド
データベースの初期化、創成、データの追加/更新、データの抽出または再編成を行うユーティリティコマンドの処理です。
以下のコマンドがあります。
rdbfmtコマンド
rdbsloaderコマンド
rdbsaloaderコマンド
rdbsuloaderコマンド
rdbgcdsiコマンド
rdbunlコマンド
rdbunladt コマンド
rdbupsコマンドおよびrdbudsiコマンド(データベースの参照)はこの分類に属します。
- 運用操作のコマンド
以下の運用操作コマンドの処理です。
運用操作の分類 | コマンド |
---|
データベースの運用操作 | rdbinhコマンド rdbpmtコマンド rdbrtrコマンド rdbrlsコマンド rdbtermコマンド rdbhsutyコマンド |
データベースの保守および管理 | rdbalmdsiコマンド rdbexdsiコマンド |
データベースのバックアップ・リカバリ関連 | rdbdmpコマンド rdbmrdmpコマンド rdbdvinfコマンド rdbsetrpコマンド |
ログ運用操作 | rdblogコマンド(アーカイブログ関連) |
データベースのチューニング | rdbcrbfコマンド rdbdrbfコマンド rdbconbfコマンド rdbdisbfコマンド rdbprtbfコマンド rdbpldicコマンド rdbresidentコマンド |
性能情報出力 | rdbsarコマンド rdbpsコマンド rdblkinfコマンド |
運用情報出力 | rdbinfコマンド rdbprtコマンド rdbspcinfコマンド rdbprdicコマンド rdbmrinfコマンド rdbcninfコマンド rdbprtmsgコマンド rdbchksanityコマンド rdbprxidコマンド |
ロードシェア機能を利用した運用 | rdbloggroupコマンド |