您好,欢迎访问三七文档
MQ日常维护文档一.简介...................................................................................................................................31.MQ目录结构...................................................................................................................3二.常用MQ系统命令..........................................................................................................31.观察MQ队列管理器运行状态......................................................................................3三.使用MQSC脚本命令管理.............................................................................................41.进入指定队列管理器脚本命令控制台...........................................................................42.常用MQSC脚本命令.....................................................................................................4查看所有通道状态...........................................................................................................4检查通道具体状态...........................................................................................................4检查队列配置和深度.......................................................................................................4四.维护项目...........................................................................................................................41.实时监控以下文件系统使用情况:...............................................................................42.定期报告MQ系统错误,备份清理MQ系统错误记录..............................................53.监控队列深度...................................................................................................................54.检查死信队列...................................................................................................................55.检查日志个数是否增长...................................................................................................56.检查MQ队列管理器错误日志......................................................................................57.清理队列管理器IPC资源................................................................错误!未定义书签。8.检查、处理队列管理器pending事务............................................................................6一.简介1.MQ目录结构MQ系统错误记录目录:/var/mqm/errorsMQ队列管理器目录(缺省情况下)/var/mqm/qmgrs/QMName注意:必须保证该目录下的任何文件不被修改,不被删除,否则MQ队列管理器将遭到致命破坏,无法恢复,本地消息全部丢失。二.常用MQ系统命令1.观察MQ队列管理器运行状态对于MQ5.1及以下版本,通过ps–ef|grepQMName看下面进程是否存在:#amqzxma0-mQMName对MQ5.2或以上版本,执行如下命令检查队列管理器运行状态:#dspmq显示结果中QMName表示MQ队列管理器的名称,STATUS表示当前运行状态。运行状态有:Starting正在启动Running正在运行Ending正在停止Endednormally已经正常终止Endedimmediately已经立即终止Endedpreemtively已经强制终止Endedunexpectively异常终止注意:停止系统后必须使用dspmq命令进行状态检查例:$dspmq显示结果QMNAME(QM0000A)STATUS(Running)QMNAME(QM0000B)STATUS(Endednormally)三.使用MQSC脚本命令管理1.进入指定队列管理器脚本命令控制台#runmqscQMName具体命令:以mqm用户登陆runmqscQMName2.常用MQSC脚本命令查看所有通道状态DISPLAYCHSTATUS(*)若通道启动失败,需要检查、分析MQ队列管理器日志文件,可能原因包括:(1)配置错误,如CONNAME。对于TCP协议,需确认对方IP和侦听端口(防火墙无限制);对于LU62,需确认所用SNAsession已建立且MQ正确引用。(2)对应通道CCSID不一致,一般发生在新建MQ环境。(3)对应通道MSN不一致,一般发生在其中一端做过变更后,如重建队列管理器、reset通道等。检查通道具体状态DISPLAYCHSTATUS(ChannelName)ALL检查队列配置和深度DISQLOCAL(QName)该命令的显示结果可以看出队列当前深度四.维护项目1.实时监控以下文件系统使用情况:检查文件系统/var/mqmMQ应用所在文件系统。2.定期报告MQ系统错误,备份清理MQ系统错误记录在遇到问题时,检查/var/mqm/errors目录下是否有新的FDC文件产生,如果有应当立即报告IBM技术支持部门。另外,要定期检查该目录下MQ错误日志。3.监控队列深度DISQLOCAL(QName)该命令的显示结果可以看出队列当前深度4.检查死信队列DISQLOCAL(DEADQName)5.检查日志个数是否增长使用命令cd移动到MQ日志所在目录,使用ls–l|wc命令统计,如果有所增长,应立即报告IBM系统支持人员。6.检查MQ队列管理器错误日志当系统运行不正常时首先检查:/var/mqm/qmgrs/QMName/errors/AMQERR0n.LOG7.停止UNIX系统中运行的队列管理器(1)首先正常停止:$endmqm–wQMgr如不能正常停止(2)$endmqm–iQMgr如不能正常停止(3)$endmqm-pQMgr如不能正常停止(4)杀死有关进程和残留在系统内部的信号灯和共享内存:a)执行ps命令找到运行的队列管理器程序进程ID。例如,如果队列管理器名为QMgr,那么可以使用下列命令:ps-ef|grepQMgrb)终止所有仍在运行的队列管理器进程。使用kill命令指定用ps命令发现的进程ID。注:无法停止的进程可使用kill-9来终止。按下列次序终止各个进程:amqpcsea命令服务器amqhasmx记录器amqharmx日志格式化器(仅LINEAR日志)amqzllp0检查点处理器amqzlaa0队列管理器代理amqzxma0处理控制器amqrrmfa库进程(用于群集)注:人工停止队列管理器可能导致FFST的发生,并在/var/mqm/errors目录中产生FDC文件。不应该将此视为队列管理器中的缺陷。甚至在使用该方法停止队列管理器后,它仍应该正常重新启动。c)杀死所有残留在系统内部的信号灯和共享内存(其属主和组均为mqm,需要用root或mqm用户来杀死):ipcs-s|grepmqm|awk'{print$2}'|xargs-iipcrm-s{}ipcs-m|grepmqm|awk'{print$2}'|xargs-iipcrm-m{}注:停止队列管理器后,若重新启动失败,则可检查上次停止后是否有IPC资源未释放。若有将会导致启动失败,需要通过上述方法予以删除(注意不要误删!)。8.检查、处理队列管理器pending事务若队列管理器启动成功后,CICS(配置XAD连接MQ)启动失败,则可以检查是否有pending事务,若有必须进行处理(可能造成数据的不一致性,必须事先加以确认),具体如下:$dspmqtrn–mQMgr$rsvmqtrn–mQMgr-a#resolvesallinternally-coordinated,in-doubttransactions$rsvmqtrn–mQMgr-bTransactionnumber#backoutthenamedexternally-coordinatedtransaction$rsvmqtrn–mQMgr-bTransactionnumber#commitsthenamedexternally-coordinatedtransaction$rsvmqtrn–mQMgr-rRMIDTransactionnumber#Forthenamedinternally-coordinatedtransactiononly
本文标题:MQ日常维护文档
链接地址:https://www.777doc.com/doc-5860343 .html