由於MQ文件破壞,導致隊列管理器無法正常停止,無法啟動。或者q damaged 需要重建。下面將列出MQ隊列管理器創建方法,隊列管理器無法停止的操作方法及隊列管理器備份結構導入導出方法。
創建隊列管理器篇
crtmqm -q WNMS_QM
在/var/mqm/qmgrs/WNMS4_QM/qm.ini文件中加入如下內容:
CHANNELS:
MaxChannels = 500
MaxActiveChannels = 500
TuningParameters:
IPCCECSetSize=4000000
IPCCExtensionSize=128000
啟動隊列管理器
strmqm WNMS_QM
創建監聽
define LISTENER(CH1_LSR) TRPTYPE(TCP) PORT(1414) CONTROL(QMGR)
執行交互
runmqsc WNMS_QM
alter qmgr ccsid(1383)
define channel(CH1) CHLTYPE(SVRCONN) TRPTYPE(TCP) HBINT(5) MCAUSER('mqm') REPLACE
define qlocal(AMC.Q) MAXDEPTH(50000) REPLACE
define qlocal(AMI.Q) MAXDEPTH(50000) REPLACE
define qlocal(AMQ.596B26112000A002) MAXDEPTH(50000) REPLACE
define qlocal(CESHI.Q) MAXDEPTH(50000) REPLACE
define qlocal(CTRL.Q) MAXDEPTH(50000) REPLACE
define qlocal(DAL.Q) MAXDEPTH(50000) REPLACE
define qlocal(DAL_FM1.Q) MAXDEPTH(50000) REPLACE
define qlocal(DAL_FM2.Q) MAXDEPTH(50000) REPLACE
define qlocal(DAL_PM1.Q) MAXDEPTH(50000) REPLACE
define qlocal(DAL_PM2.Q) MAXDEPTH(50000) REPLACE
define qlocal(DB.Q) MAXDEPTH(50000) REPLACE
define qlocal(DISP0.Q) MAXDEPTH(50000) REPLACE
define qlocal(DISP1.Q) MAXDEPTH(50000) REPLACE
define qlocal(DISP2.Q) MAXDEPTH(50000) REPLACE
define qlocal(DISP3.Q) MAXDEPTH(50000) REPLACE
define qlocal(DISP4.Q) MAXDEPTH(50000) REPLACE
define qlocal(DISP5.Q) MAXDEPTH(50000) REPLACE
define qlocal(FGD.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH1.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_AH.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_BJ.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_CQ.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_CSWG.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_FH1.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_FJ.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_GD.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_GJJWG.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_GS.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_GX.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_GZ.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_HA.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_HB.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_HE.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_HI.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_HL.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_HN.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_HUAWEI_CDN.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_HUAWEI_SYY.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_HW1.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_HWWG.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_JL.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_JS.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_JX.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_LN.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_NM.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_NX.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_QH.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_SC.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_SD.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_SH.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_SJWG.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_SN.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_SUYAN_XN.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_SX.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_TJ.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_XJ.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_XZ.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_YAXIN_CXWG.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_YN.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_ZJ.Q) MAXDEPTH(50000) REPLACE
define qlocal(FMH_ZX1.Q) MAXDEPTH(50000) REPLACE
define qlocal(GAIA.Q) MAXDEPTH(50000) REPLACE
define qlocal(GAIA_1406.Q) MAXDEPTH(50000) REPLACE
define qlocal(GAIA_1432.Q) MAXDEPTH(50000) REPLACE
define qlocal(GAIA_1432_T01.Q) MAXDEPTH(50000) REPLACE
define qlocal(GAIA_SYNC.Q) MAXDEPTH(50000) REPLACE
define qlocal(GTFT.Q) MAXDEPTH(50000) REPLACE
define qlocal(GTFTRULE.Q) MAXDEPTH(50000) REPLACE
define qlocal(KPI2ALARM.Q) MAXDEPTH(50000) REPLACE
define qlocal(KPI2ALARM1.Q) MAXDEPTH(50000) REPLACE
define qlocal(KPI2ALARM2.Q) MAXDEPTH(50000) REPLACE
define qlocal(KPI2ALARM_1.Q) MAXDEPTH(50000) REPLACE
define qlocal(KPI2ALARM_2.Q) MAXDEPTH(50000) REPLACE
define qlocal(KPI2DB.Q) MAXDEPTH(50000) REPLACE
define qlocal(KPI2DB1.Q) MAXDEPTH(50000) REPLACE
define qlocal(KPIIN1.Q) MAXDEPTH(50000) REPLACE
define qlocal(KPIOUT1.Q) MAXDEPTH(50000) REPLACE
define qlocal(KPI_120.Q) MAXDEPTH(50000) REPLACE
define qlocal(MANAGER.Q) MAXDEPTH(50000) REPLACE
define qlocal(MAT.Q) MAXDEPTH(50000) REPLACE
define qlocal(PB1.Q) MAXDEPTH(50000) REPLACE
define qlocal(PB2.Q) MAXDEPTH(50000) REPLACE
define qlocal(PB3.Q) MAXDEPTH(50000) REPLACE
define qlocal(PB4.Q) MAXDEPTH(50000) REPLACE
define qlocal(PB5.Q) MAXDEPTH(50000) REPLACE
define qlocal(PB6.Q) MAXDEPTH(50000) REPLACE
define qlocal(PB7.Q) MAXDEPTH(50000) REPLACE
define qlocal(PMH.Q) MAXDEPTH(50000) REPLACE
define qlocal(SYNC.Q) MAXDEPTH(50000) REPLACE
define qlocal(TEST.Q) MAXDEPTH(50000) REPLACE
define qlocal(TRANS.Q) MAXDEPTH(50000) REPLACE
define qlocal(TRANS_FM1.Q) MAXDEPTH(50000) REPLACE
define qlocal(TRANS_FM2.Q) MAXDEPTH(50000) REPLACE
define qlocal(TRANS_PM1.Q) MAXDEPTH(50000) REPLACE
define qlocal(TRANS_PM2.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_AH.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_BJ.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_CQ.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_CSWG.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_FH1.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_FJ.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_GD.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_GJJWG.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_GS.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_GX.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_GZ.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_HA.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_HB.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_HE.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_HI.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_HL.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_HN.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_HUAWEI_SYY.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_HW1.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_HWWG.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_JL.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_JS.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_JX.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_LN.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_NM.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_NX.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_QH.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_SC.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_SD.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_SH.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_SJWG.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_SN.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_SX.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_TJ.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_XJ.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_XZ.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_YAXIN_CXWG.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_YN.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_ZJ.Q) MAXDEPTH(50000) REPLACE
define qlocal(WFM_ZX1.Q) MAXDEPTH(50000) REPLACE
define qlocal(ZYBMQ.Q) MAXDEPTH(50000) REPLACE
隊列管理器結構導出、導入篇
解壓工具包
# uncompress -c ms03_unix.tar.Z | tar xvf -
linux的操作系統選擇,有for linux的系統的工具saveqmgr.linux
查看MQ 隊列管理器HQ_SVR是否正在運行,沒有運行則啟動MQ隊列管理器
$ dspmq ------顯示隊列管理器及狀態
$ strmqm WNMS_QM ------啟動隊列管理器
將MQ 隊列管理器WNMS_QM的結構導出到文件mqtest.conf
# ./saveqmgr.linux -m WNMS4_QM -f mqtest.conf
執行完成后,可以看到生成mqtest.conf 文件。
刪除隊列管理器
$ endmqm -z WNMS_QM ----停止隊列管理器
$ dltmqm WNMS_QM -----刪除隊列管理器
重新 創建隊列管理器WNMS_QM,並啟動隊列管理器。
$ crtmqm WNMS_QM
$strmqm WNMS_QM
從剛剛生成的配置文件中導入MQ的結構配置
$ runmqsc WNMS_QM < mqtest.conf
隊列管理器文件丟失,停止與啟動報錯篇
AMQ7017: Log not available.
對於這種問題,解決過程比較復雜,如下以隊列管理器WNMS_QM為例講述恢復過程:
1、 備份隊列管理器QM2的對象
# su - mqm
$ cd /var/mqm/qmgrs
$ mv WNMS_QM WNMS_QM_BAK
2、 刪除隊列管理器WNMS_QM
$ dltmqm WNMS_QM
MQSeries queue manager deleted.
3、 刪除目錄 /var/mqm/log 下的目錄WNMS_QM
$ cd /var/mqm/log
$ rm -rf WNMS_QM
4、確保/var/mqm/mqs.ini 文件中沒有WNMS_QM的項目,若有則刪除。
$ vi /var/mqm/mqs.ini
AllQueueManagers:
DefaultPrefix=/var/mqm
ClientExitPath:
ExitsDefaultPath=/var/mqm/exits
LogDefaults:
LogPrimaryFiles=3
LogSecondaryFiles=2
LogFilePages=1024
LogType=CIRCULAR
LogBufferPages=17
LogDefaultPath=/var/mqm/log
QueueManager:
Name=QM3
Prefix=/var/mqm
Directory=QM3
5、 重新創建隊列管理器WNMS_QM
$ crtmqm WNMS_QM
MQSeries queue manager created.
Creating or replacing default objects for WNMS_QM.
Default objects statistics : 29 created. 0 replaced. 0 failed.
Completing setup.
Setup completed.
此時 /var/mqm/mqs.ini 內容如下:
$ vi /var/mqm/mqs.ini
AllQueueManagers:
DefaultPrefix=/var/mqm
ClientExitPath:
ExitsDefaultPath=/var/mqm/exits
LogDefaults:
LogPrimaryFiles=3
LogSecondaryFiles=2
LogFilePages=1024
LogType=CIRCULAR
LogBufferPages=17
LogDefaultPath=/var/mqm/log
QueueManager:
Name=WNMS_QM
Prefix=/var/mqm
Directory=WNMS_QM
QueueManager:
Name=QM2
Prefix=/var/mqm
Directory=QM2
6、 復制新的check point文件到之前備份的目錄WNMS_QM_BAK中
$ cd /var/mqm/qmgrs
$ cp WNMS_QM/amqalchk.fil WNMS_QM_B AK
7、刪除新建的隊列管理器對象目錄/var/mqm/qmgrs/WNMS_QM
$ rm -rf WNMS_QM
8、將備份的對象管理器對象數據目錄WNMS_QM_BAK恢復到目錄WNMS_QM
$ mv WNMS_QM_BAK WNMS_QM
9、啟動隊列管理器WNMS_QM,問題搞定。
$ strmqm WNMS_QM
MQSeries queue manager 'WNMS_QM' started.