当前位置: 首页 > news >正文

suse linux 10上MQ7.0安装测试手记


本文主要介绍MQ 7.0(64位)在SUSE Linux 10上面的安装与简单测试,所有操作在测试环境中验证通过,仅此记录。

一. 创建用户及用户组

       [root@localhost ~]# mkdir /var/mqm

       [root@localhost ~]# groupadd mqm

       [root@localhost ~]# useradd -g mqm -d /var/mqm mqm

       [root@localhost ~]# passwd mqm

       mqm的home目录也可以另外设置,建议把mqm的home目录设置为/var/mqm。

二. 创建MQ文件系统

       [root@localhost ~]# mkdir /opt/mqm

       [root@localhost ~]# mkdir -p /var/mqm/{log,errors,qmgrs}

       [root@localhost ~]# chown mqm:mqm /opt/mqm

       [root@localhost ~]# chown -R mqm:mqm /var/mqm

       建议将MQ软件安装在/opt/mqm目录下,业务数据则是存放在/var/mqm中    

三. 安装MQ

       如果是安装MQ服务器的话,最少需要安装Runtime和Server两个组件,其他的组件根据需要选择。

       安装MQ服务端需要以root用户登录,解压安装包(tar -xvf mqv7.0.tar)

       解压完成后进入解压目录运行以下命令:

       [root@localhost MQ7.0]# ./mqlicense.sh -text_only或(-accept)

        注:--test_only选项是作为测试使用,只有90天的试用期。而accept选项则需要购买license。

       MQ的其中一些组件彼此间有相互依存关系,安装的时候注意顺序,或者直接全部安装即可。

      1)执行rpm -ivh MQSeriesRuntime-7.0.1-3.x86_64.rpm,安装Runtime软件包

      2)执行rpm -ivh MQSeriesSDK-7.0.1-3.x86_64.rpm,安装MQSDK软件包

      3)执行rpm -ivh MQSeriesServer-7.0.1-3.x86_64.rpm,安装Server软件包

      4)执行rpm -ivh MQSeriesJRE-7.0.1-3.x86_64.rpm,安装MQJRE软件包

      5)执行rpm -ivh MQSeriesEclipseSDK33-7.0.1-3.x86_64.rpm,安装EclipseSDK软件包

      6)执行rpm -ivh MQSeriesJava-7.0.1-3.x86_64.rpm,安装Java软件包

      7)执行rpm -ivh MQSeriesConfig-7.0.1-3.x86_64.rpm,安装MQExplorer软件包

      8)执行rpm -ivh MQSeriesSamples-7.0.1-3.x86_64.rpm,安装Samples软件包

       可以使用命令查看你安装的组件的详情:

       [root@localhost ~]# rpm -qa | grep MQ


                 MQSeriesJava-7.0.1-3

                 MQSeriesServer-7.0.1-3

                 MQSeriesSDK-7.0.1-3

                 MQSeriesEclipseSDK33-7.0.1-3

                 MQSeriesConfig-7.0.1-3

                 MQSeriesRuntime-7.0.1-3

                 MQSeriesJRE-7.0.1-3

                 MQSeriesSamples-7.0.1-3

启动:

su - mqm

strmqm QM_KC2 (队列名)

runmqlsr -r -m QM_KC2(队列名) -t TCP


四. 给root赋予mqm权限

     如果需要以root身份执行MQ相关操作,就需要赋予root的mqm用户组的权限。执行如下命令:

     [root@localhost ~]# usermod -A mqm root

     注意:需要重新登录生效。

五. 补丁安装

     补丁可以直接在官网上下载。升级方式仍然是分组件升级,和7.0的安装一样,采用rpm -ivh MQSeries*.rpm 方式。全部升级之后,使用dspmqver命令查询当前版本号及补丁号。


# dspmqver

Name:        WebSphere MQ

Version:     7.0.1.3

CMVC level:  p701-103-100813

BuildType:   IKAP - (Production)


六. 验证安装

1. 用mqm帐号登录系统

2. 创建测试用队列管理器和队列

     crtmqm -q sunkm.queue.manager ##创建缺省队列

     strmqm ##后面不跟队列管理器的名称则启动缺省队列管理器

     runmqsc ##后面不跟队列管理器的名称则进入缺省队列管理器的控制台

     define qlocal (orange.queue)

     end

3. 用测试程序向队列orange.queue发送消息

    切换到/opt/mqm/samp/bin目录下

    ./amqsput ORANGE.QUEUE ##后面不跟队列管理器的名称则表示针对缺省队列管理器中的队列操作

     当屏幕输出“Sample AMQSPUT0 start

                 target queue is ORANGE.QUEUE”时,手工输入测试消息:

     this is a test

     输入完毕,连续按两次回车键,消息输入完毕。屏幕输出“Sample AMQSPUT0 end”表示成功发送消息。

4. 从队列中读取消息

     切换到/opt/mqm/samp/bin目录下

     ./amqsget ORANGE.QUEUE ##后面不跟队列管理器的名称则表示针对缺省队列管理器中的队列操作

     当屏幕输出“Sample AMQSGET0 start

                 message <this is a test>”,停顿数秒屏幕继续输出

     “no more messages

     Sample AMQSGET0 end”,读取消息成功。

补充:

MQ的队列管理器的默认监听端口为1414,如果这个端口DOWN了,将影响消息的发送和传递。


端口用命令行启(可在多种系统下通用)的方式为:

mqm@server1:~> dspmq

QMNAME(sunkm.queue.manager)             STATUS(Running)

mqm@server1:~> runmqlsr -m sunkm.queue.manager -t tcp -p 1414

如果执行出错,可以用以下命令跟踪分析

mqm@server1:~>endmqtrc  -m  sunkm.queue.manager    -e   -a

跟踪一下

或者telnet  ip  1414

看端口启了没有



好了,就介绍到这里。


相关文章:

  • Mac下开机启动rc.common不生效的问题
  • ubuntu安装过程小记
  • GitHub 上开源的区块链项目 90% 死亡了
  • 防止僵尸进程的三种方法
  • cisco之VLAN的配置
  • bootstrap-内联文本元素-着重
  • 成功的虚拟化系统是如何炼成的?实施及运维
  • LNMP相关问题——PHP无法连接MySQL之一
  • 黑马程序员--集合框架【2】
  • Linux 运维常用组合命令
  • 调试路由器相关
  • 关于linux的段错误(Segmentation fault)
  • oracle 11g for redhat 64
  • 关于阵列卡的配置参数Cache Policy(缓存策略)
  • Eclipse 各版本说明
  • 自己简单写的 事件订阅机制
  • 【css3】浏览器内核及其兼容性
  • Druid 在有赞的实践
  • HTTP中GET与POST的区别 99%的错误认识
  • JS+CSS实现数字滚动
  • Laravel Mix运行时关于es2015报错解决方案
  • Laravel深入学习6 - 应用体系结构:解耦事件处理器
  • Mysql数据库的条件查询语句
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • Webpack入门之遇到的那些坑,系列示例Demo
  • 订阅Forge Viewer所有的事件
  • 利用jquery编写加法运算验证码
  • 前端临床手札——文件上传
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 深度解析利用ES6进行Promise封装总结
  • 蚂蚁金服CTO程立:真正的技术革命才刚刚开始
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • #!/usr/bin/python与#!/usr/bin/env python的区别
  • #NOIP 2014#day.2 T1 无限网络发射器选址
  • ()、[]、{}、(())、[[]]命令替换
  • (02)Hive SQL编译成MapReduce任务的过程
  • (NO.00004)iOS实现打砖块游戏(九):游戏中小球与反弹棒的碰撞
  • (zz)子曾经曰过:先有司,赦小过,举贤才
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (附源码)springboot优课在线教学系统 毕业设计 081251
  • (四) 虚拟摄像头vivi体验
  • (转)Sublime Text3配置Lua运行环境
  • (自适应手机端)响应式新闻博客知识类pbootcms网站模板 自媒体运营博客网站源码下载
  • .net 调用php,php 调用.net com组件 --
  • .net 提取注释生成API文档 帮助文档
  • .NET 中 GetHashCode 的哈希值有多大概率会相同(哈希碰撞)
  • .NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证
  • .NET是什么
  • ??在JSP中,java和JavaScript如何交互?
  • @DataRedisTest测试redis从未如此丝滑
  • [bzoj2957]楼房重建
  • [codevs 1515]跳 【解题报告】
  • [C语言]——C语言常见概念(1)
  • [HCIE] IPSec-VPN (手工模式)
  • [Hive] 常见函数