IBM WebSphere MQ 系列(四) 使用MQ命令

結合上節使用到的MQ命令,本節系統闡述MQ的命令。html

 

1、MQ命令集合java

    MQ命令集合有三種命令:控制命令、MQSC(MQ腳本命令)和PCF(Programmable Command Formats,可編程的命令格式)。web

 

2、控制命令shell

    控制命令:用於管理 WebSphere MQ的系統配置,包括隊列管理器、偵聽器、通道、日誌的管理。編程

    例如:建立隊列管理器(crtmqm),啓動隊列管理器(strmqm),啓動用於運行隊列管理器MQSC命令的控制檯(runmqsc)、運行通道(runmqchl)服務器

    對於Linux,WebSphere MQ 控制命令都從 shell輸入和執行。app

 

控制命令列表以下所示:jsp

addmqinf(添加配置信息)ui

amqccert(檢查證書鏈)spa

amqmdain(WebSphere MQ 服務控制)

amqmfsck(文件系統檢查)

amqtcert(傳送證書)

crtmqcvx(數據轉換)

crtmqm(建立隊列管理器)

dltmqm(刪除隊列管理器)

dmpmqaut(轉儲權限)

dmpmqlog(轉儲日誌)

dspmq(顯示隊列管理器)

dspmqaut(顯示權限)

dspmqcsv(顯示命令服務器)

dspmqfls(顯示文件)

dspmqinf(顯示配置信息)

dspmqrte(WebSphere MQ 顯示路由應用程序)

dspmqtrc(顯示格式化的跟蹤輸出)

dspmqtrn(顯示事務)

dspmqver(顯示版本信息)

endmqcsv(結束命令服務器)

endmqlsr(結束偵聽器)

endmqdnm(中止 .NET 監視器)

endmqm(結束隊列管理器)

endmqtrc(結束跟蹤)

migmbbrk(遷移發佈/預訂信息)

mqftapp(運行文件傳輸應用程序 GUI)

mqftrcv(在服務器上接收文件)

mqftrcvc(在客戶機上接收文件)

mqftsnd(從服務器發送文件)

mqftsndc(從客戶機發送文件)

rcdmqimg(記錄介質映像)

rcrmqobj(從新建立對象)

rmvmqinf(除去配置信息)

rsvmqtrn(解決事務)

runmqchi(運行通道啓動程序)

runmqchl(運行通道)

runmqdlq(運行死信隊列處理程序)

runmqdnm(運行 .NET 監視器)

runmqlsr(運行偵聽器)

runmqsc(運行 MQSC 命令)

runmqtmc(啓動客戶機觸發器監視器)

runmqtrm(啓動觸發器監視器)

setmqaut(授予或撤銷權限)

setmqcrl(設置證書撤銷列表 (CRL) LDAP 服務器定義)

setmqprd(登記生產許可證)

setmqscp(設置服務鏈接點)

strmqcfg(啓動 WebSphere MQ 資源管理器)

strmqcsv(啓動命令服務器)

strmqm(啓動隊列管理器)

strmqtrc(啓動跟蹤)

 

3、MQSC

    MQSC全稱爲MQ Script Command,MQ腳本命令

    MQSC用於管理隊列管理器對象,包括隊列管理器自己、通道、隊列、偵聽器和進程定義。 

    對於Linux,若要執行MQSC,則須要啓動腳本命令控制檯;啓動方式:在shell執行控制命令runmqsc

WebSphere MQ V7.0 的MQSC列表以下所示:

ALTER AUTHINFO

ALTER BUFFPOOL

ALTER CFSTRUCT

ALTER CHANNEL

ALTER LISTENER

ALTER NAMELIST

ALTER PROCESS

ALTER PSID

ALTER QMGR

ALTER 隊列

ALTER SECURITY

ALTER SERVICE

ALTER STGCLASS

ALTER SUB

ALTER TOPIC

ALTER TRACE

ARCHIVE LOG

BACKUP CFSTRUCT

CLEAR QLOCAL

CLEAR TOPICSTR

DEFINE AUTHINFO

DEFINE BUFFPOOL

DEFINE CFSTRUCT

DEFINE CHANNEL

DEFINE LISTENER

DEFINE LOG

DEFINE MAXSMSGS

DEFINE NAMELIST

DEFINE PROCESS

DEFINE PSID

DEFINE QUEUES

DEFINE SERVICE

DEFINE STGCLASS

DEFINE SUB

DEFINE TOPIC

DELETE AUTHINFO

DELETE BUFFPOOL

DELETE CFSTRUCT

DELETE CHANNEL

DELETE LISTENER

DELETE NAMELIST

DELETE PROCESS

DELETE PSID

DELETE QUEUES

DELETE SERVICE

DELETE SUB

DELETE STGCLASS

DELETE TOPIC

DISPLAY ARCHIVE

DISPLAY AUTHINFO

DISPLAY CFSTATUS

DISPLAY CFSTRUCT

DISPLAY CHANNEL

DISPLAY CHINIT

DISPLAY CHSTATUS

DISPLAY CLUSQMGR

DISPLAY CMDSERV

DISPLAY CONN

DISPLAY GROUP

DISPLAY LISTENER

DISPLAY LOG

DISPLAY LSSTATUS

DISPLAY MAXSMSGS

DISPLAY NAMELIST

DISPLAY PROCESS

DISPLAY PUBSUB

DISPLAY QMGR

DISPLAY QMSTATUS

DISPLAY QSTATUS

DISPLAY QUEUE

DISPLAY SBSTATUS

DISPLAY SECURITY

DISPLAY SERVICE

DISPLAY STGCLASS

DISPLAY SUB

DISPLAY SVSTATUS

DISPLAY SYSTEM

DISPLAY THREAD

DISPLAY TOPIC

DISPLAY TPSTATUS

DISPLAY TRACE

DISPLAY USAGE

MOVE QLOCAL

PING CHANNEL

PING QMGR

RECOVER BSDS

RECOVER CFSTRUCT

REFRESH CLUSTER

REFRESH QMGR

REFRESH SECURITY

RESET CHANNEL

RESET CLUSTER

RESET QMGR

RESET QSTATS

RESET TPIPE

RESOLVE CHANNEL

RESOLVE INDOUBT

RESUME QMGR

RVERIFY SECURITY

SET ARCHIVE

SET LOG

SET SYSTEM

START CHANNEL

START CHINIT

START CMDSERV

START LISTENER

START QMGR

START SERVICE

START TRACE

STOP CHANNEL

STOP CHINIT

STOP CMDSERV

STOP CONN

STOP LISTENER

STOP QMGR

STOP SERVICE

STOP TRACE

SUSPEND QMGR

 

4、PCF

    PCF,全稱爲Programmable Command Formats,可編程的命令格式。

    WebSphere MQ PCF用於MQ的系統管理編程,應用程序使用PCF實現MQSC的功能,使得MQ管理任務可編寫到應用程序中,PCF 命令和MQSC 命令具備相同的命令集;例如,PCF使得能夠在程序中建立隊列和進程定義和更改隊列管理器。

    下面的Java代碼描述MQ客戶機端程序經過PCF更改遠程服務器上因此的隊列的名稱,並打印到控制檯的過程。

Java代碼  

  1. public static void main (String [] args){  
            PCFMessageAgent agent;  
            PCFMessage  request;  
            PCFMessage []   responses;  
            String []   names;  
      
      
            agent = new PCFMessageAgent ("192.168.222.132",1414,"JAVA.CHANNEL");  
            System.out.println ("Connected.");  
      
            // Build the PCF request  
      
            request = new PCFMessage (CMQCFC.MQCMD_INQUIRE_Q_NAMES);  
            request.addParameter (CMQC.MQCA_Q_NAME, "*");  
            request.addParameter (CMQC.MQIA_Q_TYPE, CMQC.MQQT_ALL);  
      
            System.out.print ("Sending PCF request... ");  
      
            // Use the agent to send the request  
      
            responses = agent.send (request);  
            System.out.println ("Received reply.");  
      
            // Extract the MQCACF_Q_NAMES parameter from the response  
      
            names = (String []) responses [0].getParameterValue (CMQCFC.MQCACF_Q_NAMES);  
      
            // Display the results  
      
            System.out.println ("Queue names:");  
      
            for (int i = 0; i < names.length; i++)  
            {  
                System.out.println ("\t" + names [i]);  
            }  
      
            // Disconnect the agent  
      
            System.out.print ("Disconnecting... ");  
            agent.disconnect ();  
            System.out.println ("Done.");         
    }

 

MQAI,全稱爲MQ Administration Interface,MQ管理接口

    MQAI:除了PCF的系統管理編程接口以外,WebSphere MQ還提供另一種系統管理編程接口,即:MQ管理接口(MQ Administration Interface,簡稱爲MQAI),MQAI是MQ 提供的一種簡化的、實現發送和接收PCF命令消息和回覆消息的接口,MQAI經過使用數據包(Data Bags)來處理對象的屬性,這樣比直接使用PCF更簡單。

    MQAI的底層工做機制同PCF同樣,也是經過發送PCF命令消息到MQ命令服務器隊列,從而被命令服務器解釋執行,並等待回覆消息來管理WebSphere MQ,如圖所示:



 

MQAI是PCF的易用版本。 

 

有關PCF和MQAI的詳細信息,請參考MQ的幫助文檔和IBM工程師編寫的MQ系統管理編程概述一文

http://www.ibm.com/developerworks/cn/websphere/library/techarticles/loulijun/0402_mqsysm/mqsysm.html

 

5、其餘命令

例如amqsput(向隊列放入消息)、amqsget(從隊列取消息)爲MQ的內置樣本程序。

 

  MQ V7.0 在線幫助文檔
  MQ V7.5 在線幫助文檔

相關文章
相關標籤/搜索