• MQ日常维护操作手册


    假设队列管理器为QMgrName,以下所有使用QMgrName的地方您都可以替换成您维护的mq队列管理器名称。

    一、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文件用于保存历史错误消息。

    附图:/var/mqm目录结构

    转载于http://www.daobugu.com/New/index/id/109.html

  • 相关阅读:
    在asp.net中显示/隐藏GridView的列
    WPF中的图表设计器 – 2
    Code Project精彩系列
    C#实现台球游戏
    超级简单:DIV布局
    [WF4.0]工作流设计器Rehosting(三)
    android 集成 第三方应用,包。
    抓log方法
    android logcat 打印
    android build.prop学习
  • 原文地址:https://www.cnblogs.com/dahaoran/p/10836659.html
Copyright © 2020-2023  润新知