一、下載下傳7.5 Trial版本
<a href="http://www.ibm.com/developerworks/downloads/ws/wmq/">http://www.ibm.com/developerworks/downloads/ws/wmq/</a>
這是下載下傳網址,下載下傳前先必須注冊IBM ID,下載下傳完成後一路Next即可(注:windows上安裝時,會詢問是否域環境,初次學習時,為簡單起見,建議選擇No)
安裝完成後,MQ的Bin目錄會自動添加到環境變量Path中,以後就可以直接用Dos指令行視窗操作(當然,也可以用圖形化GUI方式通過IBM WebSphere MQ Explorer來管理)
注:安裝時,強烈建議用管理者Administrator身份安裝,否則安裝完成後,有可能license無法生效、runmqsc指令模式下無法正常執行指令.
二、建立隊列管理器
WIN + R鍵,輸入cmd,進入指令行視窗,鍵入:
crtmqm QM_TEST
建立一個隊列管理器QM_TEST(你可以改成自己想要的名字),如果把整個MQ了解成一個資料庫執行個體,QM_TEST相當于就是db instance中的schema(或user)
指令行建立的隊列管理器預設是不活動狀态的,可以用
strmqm QM_TEST
來啟動隊列管理器
三、建立隊列
如果說“隊列管理器”是db中的schema,那麼"隊列"就相當于db中的Table了,而隊列中的每條"消息",就相當于Table中的每條記錄,繼續在指令行視窗模式下,輸入
runmqsc QM_TEST
将進入MQ的互動指令模式,繼續輸入
define qlocal(Q1)
将建立一個本地隊列Q1(你可以改成自己需要的名字),如果此時你打開 "開始菜單->程式->IBM WebSphere MQ->WebSphere MQ Explorer (Installation1)"也能同步在圖形界面下,看到這個隊列
最後鍵入end,退出MQ的互動指令模式。
四、發送消息
繼續在Windows指令模式下,輸入
amqsput Q1 QM_TEST
這裡系統将處于等待使用者輸入的狀态,随便輸入一些消息,然後連敲二次回車,完成消息發送
五、接收消息
amqsget Q1 QM_TEST
把剛才的put換成了get,将從隊列管理器QM_TEST的隊列Q1中,把消息取出來
六、進階指南
熟悉以上指令行操作後,還可以用圖形化的操作方式再強化一遍(建議還是多用指令行模式,因為有些操作隻能用指令行完成,比如後面要提到的修改隊列管理器編碼)
WebSphere MQ Explorer中,從"幫助"菜單裡調出幫助文檔,裡面有一個不錯的教程,強烈推薦新手看一遍

不過,"教程2:将消息發送至遠端隊列"這裡,幫助文檔上有幾個細節沒講透,導緻初次用指令行照着做,可能會不成功,幾個要點如下:
1、通道命名問題
發送方與接收方的通道名稱,必須一樣,這樣二邊才能對應起來
2、接收方必須要有偵聽器,而且要處于激活狀态
3、發送方的發送通道中,連接配接名稱格式為:"<接收方HostName或IP位址>(接收方-隊列管理器-偵聽器的TCP端口) ,不包括"<>“,比如比如:yangjm(1514)或172.12.134.14(1514)
4、發送方的發送通道必須處于激活狀态,如果通道啟動失敗,嘗試右鍵->ping/複位,如果還不行,檢查上述要點1-3是否設定有問題
七、遠端連接配接問題
解決方式:
1. 更換目前使用者,建一個mqm使用者組(MQ安裝後,會預設建立該Windows使用者組)的使用者,然後以該使用者身份登入操作
2.參考IBM上的解釋,如果出于學習目的,最簡單的做法,就是在runmqsc互動模式下,鍵入
ALTER QMGR CHLAUTH(DISABLED) 直接關閉通道認證(生産環境不推薦這麼做)
另外,要想本機上的隊列能被遠端管理,前提是該隊列管理器允許遠端管理,操作方式:隊列管理器上右擊->選擇"遠端管理...",接下來的事情大家都知道
八、字元集編碼問題
每個隊列管理器,都有一個CCSID的屬性,對應的就是字元集編碼,在windows系統中,這個編碼應該是1381,如果你是用其它OS(比如linux)的配置通過腳本導入MQ的,可能編碼就不是1381了,這會導緻在windows上無法連接配接\啟動隊列管理器,可以通過MQ互動指令行修改,
runmqsc QM_TEST 進入QM_TEST的MQ互動模式
DISPLAY QMGR CCSID 檢視目前的CCSID屬性
ALTER QMGR CCSID(1381) 修改字元集編碼為1381
九、如何從“試用版”更新成“正式版”
試用版預設隻能用90天,到期後,如果購買了正式版的license,可以通過指令行導入license,指令如下:
setmqprd x:\license\amqpcert.lic
注:amqpcert.lic中的P即代表這是Product生産版本,setmqprd 後面的路徑即為license檔案的所在路徑
十、java連接配接示例代碼
View Code
需要引用的jar包(在MQ的安裝目錄下都有)
十一、機器之間遷移
如果要在多台機器上配置相同的隊列管理器,一台台機器去建立、設定十分繁瑣,可以用指令
dmpmqcfg -m QM_TEST -A > C:\SCRIPT\QM_TEST_SCRIPT.DUMP
注:其中QM_TEST即為要導出的隊列管理器名稱,而 "QM_TEST_SCRIPT.DUMP"是導出腳本的檔案名,可以随便修改,執行完後會在"C:\SCRIPT\"下生成一個“.dump”的腳本檔案,這裡我們借用了管道操作符号">"
在另一台機器上,先把dump檔案複制過去(比如就放在c盤根目錄下),然後按下列步驟執行
runmqsc QM_TEST < C:\QM_TEST_SCRIPT.DUMP > C:\QM_TEST_SCRIPT.OUT
這表示runmqsc指令将對 QM_TEST操作,操作的指令來源于腳本檔案 C:\QM_TEST_SCRIPT.DUMP,而執行結果會輸出到 C:\QM_TEST_SCRIPT.OUT