已经把用户加入MQ的执行用户组了,为什么该用户还是没有权限执行MQ

来源:互联网 发布:好喝的洋酒推荐 知乎 编辑:程序博客网 时间:2024/03/28 22:53

转载自:http://blog.csdn.net/spring_model/article/details/52793896


在我们开发的应用系统需要和其他系统进行通信的时候,如果使用MQ来通信,我们当前的用户必须有执行MQ的权限,否则会出现MQ的2035错误(无法连接队列管理器),也就是用户没有权限执行MQ。此时可以使用命令:usermod  -G mqm fxcctst  把fxcctst用户加入执行mq的用户组中。

注意:这里的mqm为执行mq权限的用户所在组,fxcctst为需要加入mq用户组的用户名。(必须使用root用户执行)

最后在使用runmqsc 时,若是包AMQ8135错误,则当前用户没有权限运行,也就是说用户未在mqm群组中。

5724-H72 (C) Copyright IBM Corp. 1994, 2005.  ALL RIGHTS RESERVED.
Starting MQSC for queue manager IBM.TEST.MQ.
MQ8135: Not authorized.
No MQSC commands read.
No commands have a syntax error.
All valid MQSC commands were processed.

 其实不是这样的,主要是因为mq得安全缓存不会立即更新,刷新就可以了。但是亦有用户在修改群组属性添加了mqm群组后依然无法使用runmqsc,。需要在runmqsc里输入refresh security(*) 来刷新安全缓存(当然,首先得找个可以运行runmqsc的用户),亦可以通过重启消息管理器来实现。


阅读全文
0 0
原创粉丝点击