runmqsc (MQSC コマンドの実行)

キュー・マネージャーで IBM® MQ コマンドを実行します。

目的

runmqsc コマンドは、キュー・マネージャーに対して MQSC コマンドを出すために使用します。 MQSC コマンドを使用することによって、管理タスクを実行できます。 例えば、ローカル・キュー・オブジェクトの定義、変更、または削除を実行できます。 MQSC コマンドとその構文については、 MQSC コマンドで説明されています。

runmqsc コマンドは、 作業対象のキュー・マネージャーに関連付けられているインストール環境から 使用する必要があります。 dspmq -o installation コマンドを使用して、どのインストールがキュー・マネージャーと関連しているかを調べることができます。

runmqsc コマンドを停止するには、 end コマンドを使用します。 あるいは、exit コマンドまたは quit コマンドを使用することもできます。

[V9.0.1 2016 年 11 月] Continuous Deliveryの場合、 IBM MQ 9.0.1以降では、MQPROMPT 環境変数を使用して任意のプロンプトを設定することにより、MQSC 環境にいることを簡単に確認したり、現在の環境の詳細を表示したりできます。 詳しくは、 MQSC コマンドによる管理を参照してください。

[V9.0.0.1 2017 年 5 月] IBM MQ 9.0.0 Fix Pack 1以降、MQPROMPT 環境変数は Long Term Support リリースでも使用できます。

Syntax

You can use the -n parameter on its own, or you can use a number of other parameters in combination:

Read syntax diagramSkip visual syntax diagram runmqsc   -n

Read syntax diagramSkip visual syntax diagram runmqsc   -e   -v   -c   -u UserID   -w WaitTime  -x -mDefaultQMgrName-mLocalQMgrNameQMgrName

説明

次の 3 つの方法で、runmqsc コマンドを開始することができます。
コマンドの検証
MQSC コマンドを検証するだけで、実行はしません。 各コマンドが正常に実行されるか失敗するかを示す出力レポートが生成されます。 このモードは、ローカル・キュー・マネージャーでのみ使用できます。
コマンドの直接実行
MQSC コマンドをローカル・キュー・マネージャーに直接送ります。
コマンドの間接実行
MQSC コマンドは、リモート・キュー・マネージャーで実行されます。 これらのコマンドは、リモート・キュー・マネージャーのコマンド・キューに書き込まれ、キューに書き込まれた順序で実行されます。 コマンドからのレポートは、ローカル・キュー・マネージャーに戻されます。

runmqsc コマンドは、stdin から入力を取り入れます。 コマンドが処理されると、結果と要約がレポートに書き込まれ、その レポートは stdout に送られます。

stdin がキーボードである場合は、MQSC コマンドを対話形式で入力できます。

あるいは、リダイレクトすることもできます。stdinテキスト・ファイルから。 ファイルからの入力を転送することにより、ファイルに入っている使用頻度の高い一連のコマンドを実行できます。 出力レポートをファイルに転送することもできます。
注: リダイレクトによって runmqsc をクライアント・モードで実行する場合は、以下のようにします。stdinIBM MQ は、入力ファイルの最初の行がパスワードであることを予期します。

オプション・パラメーター

-c
クライアント接続を使用してキュー・マネージャーに接続するように runmqsc コマンドを変更します。 キュー・マネージャーへの接続に使用されるクライアント・チャネル定義は、環境変数 MQSERVERMQCHLLIB、および MQCHLTABをこの優先順位で使用して位置指定されます。

このオプションでは、クライアントをインストールする必要があります。 これがインストールされていないと、クライアント・ライブラリーが欠落していることを報告するエラー・メッセージが発行されます。

-e
MQSC のソース・テキストがレポートにコピーできないようにします。 このパラメーターは、対話形式でコマンドを入力する場合に便利です。
-m LocalQMgr名前
リモート・キュー・マネージャーへのコマンドの実行依頼に使用する ローカル・キュー・マネージャー。 このパラメーターを省略すると、 リモート・キュー・マネージャーへのコマンドの実行依頼には、 デフォルトのローカル・キュー・マネージャーが使用されます。 -w パラメーターも指定する必要があります。
-n
キュー・マネージャーに接続しないように runmqsc コマンドを変更します。 このパラメーターを指定した場合、その他のすべてのコマンド・パラメーターを省略する必要があります。そうしないと、エラー・メッセージが発行されます。

このオプションでは、クライアント・ライブラリーをインストールする必要があります。 インストールされていない場合、エラー・メッセージが発行されます。

このモードで入力した MQSC コマンドは、ローカル・チャネル定義ファイルの管理に限定されます。このファイルは、環境変数 MQCHLLIB および MQCHLTAB を使用して配置されます。これらが定義されていない場合はデフォルト値が使用されます。
注: ローカル・チャネル定義ファイルに新しい項目を追加したり、既存の項目を変更したりしても、これらの変更はキュー・マネージャー内に反映されません。 キュー・マネージャーはローカル・チャネル定義ファイルの内容を読み取りません。 キュー・マネージャーから見れば、CCDT ファイルは書き込み専用ファイルです。 キュー・マネージャーは CCDT ファイルの内容を読み取りません。

認識されるのは、次の MQSC コマンドのみです。


ALTERDEFINEDELETEDISPLAY AUTHINFO (タイプ CRLLDAP または OCSP の場合のみ)
ALTERDEFINEDELETEDISPLAY CHANNEL (タイプ CLNTCONN の場合のみ)

AUTHINFO 管理コマンドの場合、既存の AUTHINFO 定義の名前は、 CRLLDAPn または OCSP n という名前 (タイプによる) を使用してマップおよびアドレス指定されます。ここで、 n はチャネル定義ファイルに現れる番号順です。 新しい AUTHINFO 定義は、クライアント・チャネル・テーブルに順番に追加されます。 例えば、次のコマンドが発行されたとします。

DEFINE AUTHINFO(XYZ) AUTHTYPE(CRLLDAP) CONNAME('xyz')

DEFINE AUTHINFO(ABC) AUTHTYPE(CRLLDAP) CONNAME('abc')
これは、'xyz' LDAP サーバーに CRL があるかどうかを最初に検査し、その CRL サーバーが使用不可である場合、次に 'abc' サーバーを検査します。
DISPLAY AUTHINFO(*) CONNAME コマンドを使用すると、次のように表示されます。

AMQ8566: Display authentication information details.
AUTHINFO(CRLLDAP1)
AUTHTYPE(CRLLDAP)            CONNAME(xyz)
AMQ8566: Display authentication information details.
AUTHINFO(CRLLDAP2)
AUTHTYPE(CRLLDAP)            CONNAME(abc)
注: クライアント・モードでは、クライアント・チャネル・テーブルの末尾への新規項目の挿入のみがサポートされます。 CRL LDAP サーバーの優先順位を変更する場合、既存のオブジェクトをリストから除去し、そのオブジェクトを正しい順序で末尾に再挿入する必要があります。
-u userid
-u パラメーターを使用してユーザー ID を指定する場合、対応するパスワードを求めるプロンプトが出されます。

CHCKLOCL(REQUIRED) または CHCKLOCL(REQDADM) を指定して CONNAUTH AUTHINFO レコードを構成した場合、-u パラメーターを使用する必要があります。このパラメーターを使用しないと runmqsc でキュー・マネージャーを管理することはできません。

このパラメーターを指定して stdin をリダイレクトすると、プロンプトは表示されず、リダイレクトされた入力の最初の行にパスワードが含まれます。

-v
アクションを実行しないで、指定のコマンドを確認します。 このモードを使用できるのは、ローカル側のみです。 パラメーター -w および -x は、-v と同時に指定した場合は、無視されます。
重要: -v フラグは、コマンドの構文のみを検査します。 このフラグを設定すると、コマンドに示されたオブジェクトが実際に存在するかどうかは検査されません。

例えば、キュー Q1 がキュー・マネージャーに存在しない場合、次のコマンドは構文的に正しく、構文エラーは生成されません: runmqsc -v Qmgr display ql(Q1)

一方、-v フラグを省略した場合は、エラー・メッセージ AMQ8147 を受け取ります。

-w WaitTime
MQSC コマンドを他のキュー・マネージャーで実行します。 このためには、必要なチャネルと伝送キューがセットアップされている 必要があります。 詳しくは、 リモート管理のためのチャネルおよび伝送キューの準備 を参照してください。

-v パラメーターを指定した場合、このパラメーターは無視されます。

WaitTime
runmqsc が応答を待つ秒単位での時間。 この時間が経過した後に受け取る応答は破棄されますが、MQSC コマンドはまだ実行します。 1 から 999999 の範囲で時間を指定してください。

各コマンドは、Escape PCF として、ターゲット・キュー・マネージャーの コマンド・キュー (SYSTEM.ADMIN.COMMAND.QUEUE) へ送られます。

応答キューは SYSTEM.MQSC.REPLY.QUEUE に入れられ、結果はレポートに追加 されます。 これは、ローカル・キューまたはモデル・キューとして定義できます。

-x
ターゲット・キュー・マネージャーは z/OS®の下で実行されています。 このパラメーターは、間接モードでしか適用されません。 -w パラメーターも指定する必要があります。 間接モードでは、MQSC コマンドは IBM MQ for z/OS コマンド・キューに適した形式で書き込まれます。
QMgrName
MQSC コマンドを実行するターゲット・キュー・マネージャーの名前。 指定しない場合、デフォルトのキュー・マネージャーが使用されます。

戻りコード

戻りコード 説明
00 MQSC コマンド・ファイルは正常に処理されました
10 MQSC コマンド・ファイルは処理されましたが、エラーが発生しました。レポートの中にコマンドの失敗の理由が記述されています。
20 エラー。MQSC コマンド・ファイルが実行されません。

  1. 次のコマンドをコマンド・プロンプトに入力します。
    
    runmqsc
    
    これで、コマンド・プロンプトに MQSC コマンドを直接入力できるようになります。 キュー・マネージャー名は指定されていないので、MQSC コマンドは、デフォルト・キュー・マネージャーで処理されます。
  2. ユーザーの環境に応じて、次のコマンドのいずれかを使用し、MQSC コマンドの チェックのみが行われることを指定します。
    
    runmqsc -v BANK < "/u/users/commfile.in"
    
    runmqsc -v BANK < "c:\users\commfile.in"
    
    キュー・マネージャー名は BANK です。 このコマンドは、ファイル commfile.in 内の MQSC コマンドを検証し、現行ウィンドウに出力を表示します。
  3. 次のコマンドは、デフォルト・キュー・マネージャーに対して MQSC コマンド・ファイル mqscfile.in を実行します。
    
    runmqsc < "/var/mqm/mqsc/mqscfile.in" > "/var/mqm/mqsc/mqscfile.out"
    
    runmqsc < "C:\Program Files\IBM\MQ\mqsc\mqscfile.in" >
            "C:\Program Files\IBM\MQ\mqsc\mqscfile.out"
    
    この例では、出力先はファイル mqscfile.out です。
  4. このコマンドは、コマンドの実行依頼に QMLOCAL を使用して、QMREMOTE キュー・マネージャーにコマンドを実行依頼します。
    
    runmqsc -w 30 -m QMLOCAL QMREMOTE