Ibm mq Websphere mq侦听器可用,但显示未找到错误

Ibm mq Websphere mq侦听器可用,但显示未找到错误,ibm-mq,Ibm Mq,我们面临错误,应用程序无法连接到队列管理器,原因是 代码mqrc 2538 webspher MQ版本v7.0.1.2 操作系统“Solaris” 我已经通过手动启动了侦听器 runmqlsr -m qmname -t tcp -p port 通过命令检查侦听器的状态后 display lsstatus(listener name) “侦听器可用,但当我尝试显示此侦听器的状态时,它显示未找到MQ对象。” 我们已经检查了错误日志,但没有相关客户端失败的信息。我们已经手动启动了侦听器,侦听器

我们面临错误,应用程序无法连接到队列管理器,原因是 代码mqrc 2538

  • webspher MQ版本v7.0.1.2

  • 操作系统“Solaris”

  • 我已经通过手动启动了侦听器

    runmqlsr -m qmname -t tcp -p port
    
  • 通过命令检查侦听器的状态后

    display lsstatus(listener name)
    
  • “侦听器可用,但当我尝试显示此侦听器的状态时,它显示未找到MQ对象。”

  • 我们已经检查了错误日志,但没有相关客户端失败的信息。我们已经手动启动了侦听器,侦听器信息仅在错误日志中可用

  • 此外,我们还检查了“/var/mqm/error”我们找到了FDC文件“probe ID:XY132002”。我们已与系统管理员联系,他们将装载磁盘空间。 在安装/var/mqm/disc space之后,我们仍然面临同样的问题

  • 我已经在脚本模式下给出了“start lstr(lstr name)”,但我发现它正在接受请求,同时我尝试显示该侦听器的状态,它显示未找到MQ对象。”

    我已检查qmgr错误日志和fdc错误日志“

    您能找到写在/var/mqm/errors/AMQERR01.LOG中的以下错误吗

    说明:1。已尝试运行brker(SFMSICREQMGR),但由于“6119:xecF\u E\u意外的\u系统\u RC”的原因,brker已结束

    错误:AMQ6119:发生内部WebSphere MQ错误(无法获取内存段:shmget(0x00000000,16384)[rc=1 errno=28]设备上没有剩余空间。 ++以下错误写入队列管理器级别错误:++

    AMQ5008:无法找到基本的websphere MQ进程10063(amqfgpub),假定该进程已终止

    这些是写入队列管理器级错误日志和系统级错误日志中的错误:

  • 我们添加了以下值

    process.max-file-descriptor=(basic,10000,deny)
    project.max-sem-ids=(priv,1024,deny)
    project.max-shm-ids=(priv,1024,deny)
    project.max-shm-memory=(priv,4294967296,deny)
    
  • 添加此参数后,我们重新启动了队列管理器的

  • 服务器中有四个队列管理器,三个队列管理器和侦听器处于运行状态,第四个队列管理器面临相同的错误

  • 我们已经停止了一个队列管理器,运行了第四个队列管理器,第四个队列管理器正在运行,侦听器也处于运行状态

  • 一个队列管理器不允许启动。此队列管理器面临相同的错误

  • 所有队列管理器和侦听器运行正常

  • 我们已经创建了本地队列, 队列名称(错误\本地\队列)。但当应用程序尝试从此队列获取消息时,他的获取错误 Mqrc 2033

    请帮忙解决这个问题


    非常感谢您解决了所有问题。

    如果您使用以下命令启动侦听器(根据您的问题):-

    然后,您没有在任何地方为侦听器指定名称(因为此命令没有该功能)

    但是,它仍将显示在带有系统生成名称的
    DISPLAY LSSTATUS
    命令中。如果使用以下命令:-

    DISPLAY LSSTATUS(*)
    
    这将显示所有正在运行的侦听器,您将看到其中一个侦听器的名称类似于
    SYSTEM.LISTENER.TCP.1
    ,这是您的
    runmqlsr
    之一

    或者,如果要为侦听器指定一个特定名称,则必须按如下方式定义侦听器(将nnnn替换为端口号):-

    然后您可以按如下方式启动它:-

    START LISTENER(TCP.LSTR)
    
    DISPLAY LSSTATUS(TCP.LSTR) ALL
    
    并显示其状态,如下所示:-

    START LISTENER(TCP.LSTR)
    
    DISPLAY LSSTATUS(TCP.LSTR) ALL
    
    注意:我使用了名称
    TCP.LSTR
    ,但您可以选择任何您想要的名称


    您在问题末尾提到的错误与听众无关。请为这些错误单独提问。

    MQ v7.0自2015年9月30日以来一直不受支持

    您发现的错误表明队列管理器共享内存不足,这可能导致整个队列管理器出现问题,包括您的侦听器。可以使用
    mqconfig
    脚本找到当前值以及IBM的建议

    MQ v7.0没有随
    mqconfig
    脚本提供。请下载该脚本并验证哪些内核设置不正确,下载站点为“”

    您可以在IBM MQ v7知识中心页面“”中找到有关设置这些的更多信息


    知识中心中的值是具有两个队列管理器的平均服务器的建议值,应视为最小值。如果无法运行4个队列管理器,则我建议使用更高的值。我将首先将
    max sem ids
    max shm ids
    设置为
    10240
    ,然后查看是否这就解决了问题,如果没有,那么尝试向
    max shm memory
    值添加50%。

    2033与原始问题无关。请发布新问题。