共計 2105 個字符,預計需要花費 6 分鐘才能閱讀完成。
這篇文章給大家分享的是有關 MQ 日常維護操作有哪些的內容。丸趣 TV 小編覺得挺實用的,因此分享給大家做個參考,一起跟隨丸趣 TV 小編過來看看吧。
一、MQ 的啟動與停止
用 root 用戶啟 / 停需要 root 用戶包含在 mqm 組中。
1、MQ 的啟動
strmqm QMgrName
如果啟動默認隊列管理器,strmqm 后可以忽略隊列管理器名稱。
在意外情況停止隊列管理器后,啟動可能會失敗,此時可以檢查上次停止后是否有 IPC 資源未釋放,若有請予以刪除,刪除方法參考下面的“C. 清理所有殘留在系統內部的信號燈和共享內存”。
2、MQ 的關閉
一般情況下,我們使用“endmqm -i QMgrName”來停止 mq,如果停止失敗,可以使用如下步驟:
步驟 1:endmqm -p QMgrName,如果停不掉,繼續步驟 2;
步驟 2:殺死有關進程,清理殘留在系統內部的信號燈和共享內存
A. 找到隊列管理器程序進程
ps -ef|grep QMgrName
B. 使用 kill 命令終止 1 中找到的程序進程,無法停止的進程可以用 kill - 9 來終止,終止進程的順序如下(不存在的進程可以忽略):
kill amqpcsea 命令服務器
kill amqhasmx 記錄器
kill amqharmx 日志格式化器(僅 LINEAR 日志)
kill amqzllp0 檢查點處理器
kill amqzlaa0 隊列管理器代理
kill amqzxma0 處理控制器
kill amqrrmfa 庫進程(用于群集)
C. 清理所有殘留在系統內部的信號燈和共享內存(其屬主和組均為 mqm)
ipcs -s| grep mqm | awk {print $2} |xargs -i ipcrm -s {}
ipcs -m| grep mqm | awk {print $2} |xargs -i ipcrm -m {}
二、MQ 運行狀態查看與常用操作
1、查看隊列管理器運行狀態
對 MQ 5.2 或以上版本,執行如下命令檢查隊列管理器運行狀態:dspmq
顯示結果中 QMNAME 表示 MQ 隊列管理器的名稱,STATUS 表示當前運行狀態。
運行狀態有如下幾種:
Starting 正在啟動
Running 正在運行
Ending 正在停止
Ended normally 已經正常終止
Ended immediately 已經立即終止
Ended preemtively 已經強制終止
Ended unexpectively 異常終止
注意:停止 MQ 后必須使用 dspmq 命令進行狀態檢查
dspmq 查詢結果示例:
QMNAME(QM00) STATUS(Running)
2、查看通道運行狀態與啟停通道
runmqsc
dis chl(*); 查看所有通道定義
dis chs(*); 查看所有通道狀態,如果沒有查詢到通道狀態,或報錯 AMQ8420: Channel Status not found,請啟動通道
dis chs(ChannelName);查看通道 ChannelName 的狀態
通道狀態有如下幾種:
STARTING 正在啟動
BINDING 正在綁定
INITIALIZING 正在初始化
RUNNING 正常
STOPPING 正在停止
RETRYING 重試
PAUSED 等待
STOPPED 已停止
REQUESTING 請求
start chl(ChannelName); 啟動通道
stop chl(ChannelName); 停止通道
reset channel(ChannelName); 重置通道序號。當本地與其他 MQ 隊列管理器的通道無法正常啟動的情況,檢查日志發現是通道序號不一致,此時就需要先停止發送方通道,并在發送方和接收方進行通道計數的重置,重置后啟動通道即可恢復通訊。
3、查看通道監聽狀態與啟停監聽
runmqsc
dis listner(*); 查看通道監聽定義
dis lsstatu(listnerName); 查看監聽狀態
start lstr(listnerName);啟動監聽
stop lstr(listnerName);停止監聽
4、查看隊列深度
runmqsc
dis q(*); 查看所有各類隊列的屬性
dis qlocal(QName); 查看所有本地隊列的屬性
隊列深度屬性為:CURDEPTH
5、查看死信隊列
dis qlocal(DEADQName)
三、日常維護項目
1、監控文件系統 /var/mqm 的使用情況,建議不要超過 80%。
2、定期報告 MQ 系統錯誤,備份清理 MQ 系統錯誤記錄
在遇到問題時,檢查 /var/mqm/errors 目錄下是否有新的 FDC 文件產生,如果有應當檢查原因。另外,要定期檢查該目錄下 MQ 錯誤日志。
3、檢查日志個數是否增長
使用命令 cd 移動到 MQ 日志所在目錄(/var/mqm/log/QMgrName/active/),使用 ls –l|wc 命令統計。
4. 檢查 MQ 隊列管理器錯誤日志
當系統運行不正常時首先檢查:/var/mqm/qmgrs/QMgrName/errors/AMQERR0n.LOG
錯誤消息生成后總是放在 AMQERR01 中,AMQERR02 和 AMQERR03 文件用于保存歷史錯誤消息。
感謝各位的閱讀!關于“MQ 日常維護操作有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!