MQDの環境作成時に指定したメッセージ格納用データベーススペースに十分な空き領域がないと、新たなメッセージキューを作成することができなくなります。このような場合は、すでにあるメッセージキューを別のデータベーススペースに格納域を変更して、データベーススペースに空き領域を作ることで、新たなメッセージキューを作成することができます。
メッセージ格納ファイル満杯時のメッセージキューの追加手順を図5.8 メッセージ格納ファイル満杯時のメッセージキューの追加手順に示します。
図5.8 メッセージ格納ファイル満杯時のメッセージキューの追加手順
以下にメッセージキューの容量変更について説明します。
メッセージ格納テーブルのデータ退避
メッセージ格納テーブルの格納域の変更
メッセージ格納テーブルのデータ復元
メッセージキューの格納域を変更する前に、メッセージ格納テーブルのデータの退避を行う必要があります。データの退避は、Symfowareの rdbunlコマンドを使用して行います。
以下に、rdbunlコマンドの入力例を示します。
rdbunl -i MQD_MQDシステム名.USR_通番_DSI 退避ファイル名
注意
通番は、当該のSQL記述ファイル(メッセージキュー名.sql)に記述されています。
退避ファイル名は、絶対パスを指定してください。
Symfoware/RDBトランザクション連携機能を使用する場合は、“MQD_MQDシステム名”を業務用データベース名に置き換えて入力してください。
メッセージ格納テーブルの格納域の変更を行う場合には、メッセージ格納テーブルのSQL記述ファイル(メッセージキュー名.sql)を複写し設定を編集して、メッセージ格納テーブルのDSIおよびインデックスDSIの削除と再作成を行う必要があります。DSIおよびインデックスDSIの削除と再作成は、Symfowareの rdbddlexコマンドを使用して行います。
以下に、メッセージ格納テーブルの格納域の変更のSQL記述ファイル例を示します。
DROP DSI USR_通番_IXDSI; DROP DSI USR_通番_DSI; CREATE DSI USR_通番_DSI DSO USR_通番_DSO ALLOCATE DATA ON 変更先データベーススペース名 SIZE サイズ1; CREATE DSI USR_通番_IXDSI INDEX DSO USR_通番_IXDSO ALLOCATE BASE ON 変更先データベーススペース名 SIZE サイズ2, INDEX ON 変更先データベーススペース名 SIZE サイズ3;
ポイント
各サイズを変更することで格納域の容量も変更できます。
注意
通番は、当該のSQL記述ファイル(メッセージキュー名.sql)に記述されています。
通番はシステムにより採番されていますので変更しないでください。
SQL記述ファイルは、データベース上のテーブルに関しての情報が記述されています。取り扱いには十分注意してください。
以下に、rdbddlexコマンドの入力例を示します。
rdbddlex -d MQD_MQDシステム名 SQL記述ファイル
注意
Symfoware/RDBトランザクション連携機能を使用する場合は、“MQD_MQDシステム名”を業務用データベース名に置き換えて入力してください。
“5.3.5.1 メッセージ格納テーブルのデータ退避”で退避したデータを再作成したメッセージ格納テーブルに復元します。データの復元は、Symfowareの rdbsloaderコマンドを使用して行います。
以下に、rdbsloaderコマンドの入力例を示します。
rdbsloader -mi -i MQD_MQDシステム名.USR_通番_DSI -f 10 退避ファイル名
注意
通番は、当該のSQL記述ファイル(メッセージキュー名.sql)に記述されています。
通番はシステムにより採番されていますので変更しないでください。
Symfoware/RDBトランザクション連携機能を使用する場合は、“MQD_MQDシステム名”を業務用データベース名に置き換えて入力してください。