今天给各位分享linuxmq是什么的知识,其中也会对linux向mq发送消息的命令进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、linux如何查看mq版本信息
- 2、linux系统自带的消息队列和rabbitmq有什么区别?
- 3、linux下安装MQ mqlisence.sh-accept这个命令执行不了怎么办?
- 4、Linux中怎么删除MQ侦听器
- 5、linux系统如何启动mq
1、linux如何查看mq版本信息
linux下查看mysql(简称mq)版本有两种方法:
方法一:
在终端机使用指令“mysql --version”。
方法二:
登陆 mysql 用户端后执行“select version();”。
2、linux系统自带的消息队列和rabbitmq有什么区别?
RabbitMQ是使用Erlang编写的一个开源的消息队列,本身支持很多的协议:AMQP,XMPP, SMTP, STOMP,也正因如此,它非常重量级,更适合于企业级的开发。同时实现了Broker构架,这意味着消息在发送给客户端时先在中心队列排队。对路由,负载均衡或者数据持久化都有很好的支持。
3、linux下安装MQ mqlisence.sh-accept这个命令执行不了怎么办?
如果MQ的安装包是ISO,所以需要将ISO文件mount到Linux的一个目录下面,具体操作如下:
假如选定的mount目录为根目录下mnt/下面,或者下面新建一个目录可以mkdir一个目录。在此是直接放在mnt目录下面的:
ISO文件放在/home/afe/MQinstall/下面,名字为MQ_6.0_Linux_x86-64.iso 那么可以用命令:
mount -o loop /home/afe/MQinstall/MQ_6.0_Linux_x86-64.iso /mnt/cd1
这个时候,ISO文件中的rpm文件都出现在了/mnt下面。
备注:使用mount需要root权限。
如果你的安装包是.tar.gz文件,那就可以省略以上一个步骤:直接解压
tar -zxvf MQ_6.0_Linux_x86-64.tar.gz
接下来步骤如下:
1:创建WebSphere MQ 必需的文件系统,命令如下:
mkdir /opt/mqm # for product code
mkdir /var/mqm # for working data
MQ安装时候默认的目录就是这两个,意思可以没必要建,但是为了保险还是自己手工建立一下。
2:创造MQ用户和用户组,命令如下:
groupadd mqm
useradd -d /var/mqm -g mqm -G mqm mqm
passwd mqm # change password to "password"
只有把mqm密码改了,才能使以上生效。
3:为mqm用户组添加root组
cd /etc
vi group
修改 mqm:!:1007:mqm ? mqm:!:1007:mqm,root
这里的gid要依据各个系统的建立用户设定而为。此处是1007
4:调整系统参数(视需要而定)
修改最大共享内存,命令如下:
cat /proc/sys/kernel/shmmax
echo 268435456 /proc/sys/kernel/shmmax
修改最大文件句柄,命令如下:
cat /proc/sys/fs/file-max
echo 32768 /proc/sys/fs/file-max
如果自己系统比这个大,没必要改。
5:转到WebSphere MQ解压后的目录中,获得WebSphere MQ授权,命令如下:
./mqlicense.sh -text_only
阅读全文后,选择1接受授权。
6:安装WebSphere MQ客户端和服务端,命令如下:
rpm -ivh MQSeriesRuntime-6.0.0-0.i386.rpm
rpm -ivh MQSeriesSDK-6.0.0-0.i386.rpm
rpm -ivh MQSeriesJava-6.0.0-0.i386.rpm
rpm -ivh MQSeriesClient-6.0.0-0.i386.rpm
rpm -ivh MQSeriesSamples-6.0.0-0.i386.rpm
rpm -ivh MQSeriesServer-6.0.0-0.i386.rpm(如果只装客户端,这个没必要安装)
7:安装校验
rpm -qa | grep MQSeries
结果如下则表明MQ 客户端的安装已成功。
MQSeriesRuntime-6.0.0-0
MQSeriesSDK-6.0.0-0
MQSeriesJava-6.0.0-0
MQSeriesClient-6.0.0-0
MQSeriesSamples-6.0.0-0
MQSeriesServer-6.0.0-0(只装客户端,是没有这一项的)
到这里MQ就已经安装完成了。
验证安装
1、mqm用户登录
创建队列venus.queue.manager
crtmqm -q venus.queue.manager
启动队列管理器
strmqm
启用MQSC命令
runmqsc
进入环境后,定义名为ORANGE.QUEUE的本地队列
define qlocal (orange.queue)
end (停止MQSC)
转到/opt/mqm/samp/bin目录下,使用amqsput样本程序来将消息放入队列,以且使用amqsget样本程序来从队列取回消息
dspmq 命令可显示MQM队列状态
./amqsput ORANGE.QUEUE
(注意,队列名称为大写 否则会找不到队列,报错MQOPEN ended with reason code 2085)
输入一行文字,然后以空行结束,退出
./amqsget ORANGE.QUEUE
可显示刚才放入队列的消息,成功提示即证明完成。
MQ的基本操作
创建队列管理器
crtmqm –q QMgrName
-q是指创建缺省的队列管理器
删除队列管理器
dltmqm QmgrName
启动队列管理器
strmqm QmgrName
如果是启动默认的队列管理器,可以不带其名字
停止队列管理器
endmqm QmgrName 受控停止
endmqm –i QmgrName 立即停止
endmqm –p QmgrName 强制停止
显示队列管理器
dspmq –m QmgrName
运行MQ命令
runmqsc QmgrName
如果是默认队列管理器,可以不带其名字
往队列中放消息
amqsput QName QmgrName
如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字
从队列中取出消息
amqsget QName QmgrName
如果队列是默认队列管理器中的队列,可以不带其队列管理器的名字
启动通道
runmqchl –c ChlName –m QmgrName
服务器通道不用启动
启动侦听
runmqlsr –t TYPE –p PORT –m QMgrName
停止侦听
endmqlsr -m QmgrName
下面是在MQ环境中可以执行的MQ命令(即在runmqsc环境下可以敲的命令)
定义持久信队列
DEFINE QLOCAL(QNAME) DEFPSIST(YES) REPLACE
设定队列管理器的持久信队列
ALTER QMGR DEADQ(QNAME)
定义本地队列
DEFINE QL(QNAME) REPLACE
定义别名队列
DEFINE QALIAS(QALIASNAME) TARGQ(QNAME)
远程队列定义
DEFINE QREMOTE(QRNAME) +
RNAME(AAA) RQMNAME(QMGRNAME) +
XMITQ(QTNAME)
定义模型队列
DEFINE QMODEL(QNAME) DEFTYPE(TEMPDYN)
定义本地传输队列
DEFINE QLOCAL(QTNAME) USAGE(XMITQ) DEFPSIST(YES) +
INITQ(SYSTEM.CHANNEL.INITQ)+
PROCESS(PROCESSNAME) REPLACE
创建进程定义
DEFINE PROCESS(PRONAME) +
DESCR(‘STRING’)+
APPLTYPE(WINDOWSNT)+
APPLICID(’ runmqchl -c SDR_TEST -m QM_ TEST’)
其中APPLTYPE的值可以是:CICS、UNIX、WINDOWS、WINDOWSNT等
创建发送方通道
DEFINE CHANNEL(SDRNAME) CHLTYPE(SDR)+
CONNAME(‘100.100.100.215(1418)’) XMITQ(QTNAME) REPLACE
其中CHLTYPE可以是:SDR、SVR、RCVR、RQSTR、CLNTCONN、SVRCONN、CLUSSDR和CLUSRCVR。
创建接收方通道
DEFINE CHANNEL(SDR_ TEST) CHLTYPE(RCVR) REPLACE
创建服务器连接通道
DEFINE CHANNEL(SVRCONNNAME) CHLTYPE(SVRCONN) REPLACE
显示队列的所有属性
DISPLAY QUEUE(QNAME) [ALL]
显示队列的所选属性
DISPLAY QUEUE(QNAME) DESCR GET PUT
DISPLAY QUEUE(QNAME)MAXDEPTH CURDEPTH
显示队列管理器的所有属性
DISPLAY QMGR [ALL]
显示进程定义
DISPLAY PROCESS(PRONAME)
更改属性
ALTER QMGR DESCR(‘NEW DESCRIPTION’)
ALTER QLOCAL(QNAME) PUT(DISABLED)
ALTER QALIAS(QNAME) TARGQ(TARGQNAME)
删除队列
DELETE QLOCAL(QNAME)
DELETE QREMOTE(QRNAME)
清除队列中的所有消息
CLEAR QLOCAL(QNAME)
查看CCSID
DISPLAY QMGR CCSID
修改CCSID为1381
ALTER QMGR CCSID(1381)
以下是一些高级配置的命令:
amqmcert 配置SSL证书
amqmdain 配置windows上的MQ服务
crtmqcvx 转换数据
dmpmqaut 转储对象权限管理
dmpmqlog 转储日志管理
dspmq 显示队列管理器
dspmqaut 显示打开对象的权限
dmpmqcap 显示处理程序容量和处理程序数
dspmqcsv 显示命令服务器状态
dspmqfls 显示文件名
dspmqtrc 跟踪MQ输出(HP-UNIX LINUX Solaris)
dspmqrtn 显示事务的详细信息
endmqcsv 停止队列管理器上的命令服务器
strmqcsv 启动队列管理器上的命令服务器
endmqtrc 停止跟踪
rcdmqimg 向日志写对象的映像
rcmqobj 根据日志中的映像重新创建一个对象
rsvmqtrn 提交或逆序恢复事务
4、Linux中怎么删除MQ侦听器
MQ 6.0
for linux安装与卸载
一、安装步骤:
Mq 的安装流程
安装前准备:将32位的mq安装程序和补丁文件上传到服务器
软件: C8472ML.WebSphere MQ for Linux (x86-32)
V6.0.tar.gz ----- mq的安装程序
6.0.2-WS-MQ-LinuxIA32-FP0003.ta ---mq的补丁文件
安装过程:
1、安装mq程序
解压 C8472ML.WebSphere MQ for Linux
(x86-32) V6.0.tar.gz 命令如下:
tar –zxvf
C8472ML.WebSphere MQ for Linux (x86-32) V6.0.tar.gz
然后执行下面命令
./mqlicense.sh -text_only 阅读全文后,
选择1接受授权,接下来按照顺序执行
rpm
-ivh MQSeriesRuntime-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesSDK-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesServer-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesClient-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesSamples-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesJava-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesMan-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesMsg_es-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesMsg_Zh_CN-6.0.0-0.i386.rpm
2、安装完成后还要安装补丁程序:
解压
6.0.2-WS-MQ-LinuxIA32-FP0003.tar,命令如下:
tar -xvf
6.0.2-WS-MQ-LinuxIA32-FP0003.tar 完成后依序执行
rpm
-ivh MQSeriesRuntime-U811634-6.0.2-3.i386.rpm
rpm
-ivh MQSeriesSDK-U811634-6.0.2-3.i386.rpm
rpm
-ivh MQSeriesServer-U811634-6.0.2-3.i386.rpm
rpm
-ivh MQSeriesClient-U811634-6.0.2-3.i386.rpm
rpm
-ivh MQSeriesSamples-U811634-6.0.2-3.i386.rpm
rpm
-ivh MQSeriesJava-U811634-6.0.2-3.i386.rpm
3、修改
/etc/group 文件:
vi group 将mqm:!:1000:mqm改为mqm:!:1000:mqm,root
二、安装完毕以后,验证安装是否成功:
按顺序执行以下步骤:
1. 用mqm帐号登录系统
2. 创建测试用队列管理器和队列
crtmqm -q
venus.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 ”,停顿数秒屏幕继续输出“no more messages
Sample AMQSGET0
end”,读取消息成功。
三、卸载
1. 用root帐号登录系统
2.
停止所有队列管理器
查看正在运行的队列管理器
dspmq
停止所有跟队列管理器相关的监听程序,注意:QueueManagerName是队列队列管理器名称,具体名称用命令dspmq查询
endmqlsr
-m QueueManagerName
停止所有正在运行的队列管理器
endmqm
QueueManagerName
确认所有跟MQ有关的进程都已经停止
ps -ef | grep mq
3.
删除安装包
查看安装了那些相关的包
rpm -q -a | grep
MQSeries
一次性删除所有安装的包,以下命令只是一个示例,命令后面的包名称是命令“rpm -q -a | grep MQSeries”
--查询所得的所有包名称,包名之间用空格分隔,
rpm -ev MQSeriesRuntime-U811634-6.0.2-3
MQSeriesSDK-6.0.0-0 MQSeriesJava-U811634-6.0.2-3 MQSeriesMan-6.0.0-0
MQSeriesServer-U811634-6.0.2-3 MQSeriesClient-6.0.0-0
MQSeriesClient-U811634-6.0.2-3 MQSeriesMsg_Zh_CN-6.0.0-0 MQSeriesSamples-6.0.0-0
MQSeriesRuntime-6.0.0-0 MQSeriesSamples-U811634-6.0.2-3 MQSeriesJava-6.0.0-0
MQSeriesSDK-U811634-6.0.2-3 MQSeriesServer-6.0.0-0
MQSeriesMsg_es-6.0.0-0
5、linux系统如何启动mq
开篇之前奉上几条黄金链接:
MQ参考文档
MQ下载地址:
安装的MQ软件包为WMQv600Trial-x86_linux_2.tar.gz. 将WMQv600Trial-x86_linux_2.tar.gz解压至某一目录。
(1)执行接受许可脚本: ./mqlicense.sh –accept 这个脚本是要安装WebSphere MQ 软件包的MQ许可程序. 至关重要,这个脚本没有正确配置的话将导致MQ安装失败.–accept是不启动图形直接接受许可。
(2) 安装 WebSphere MQ for Linux 服务器:
[root@localhost mq]# rpm-ivh MQSeriesRuntime-6.0.0-0.i386.rpm
[root@localhost mq]# rpm-ivh MQSeriesSDK-6.0.0-0.i386.rpm
[root@localhost mq]# rpm-ivh MQSeriesServer-6.0.0-0.i386.rpm
注:安装完成后,相关文件会被自动安装在/opt/mqm下,在安装
MQSeriesRuntime-6.0.0-0.i386.rpm时候,安装程序为系统自动创建了一个mqm用户和mqm组,安装完毕后,需要使用该用户来进行MQ的配置。
(3) 安装 WebSphere MQ for Linux 客户端:
[root@localhost mq]# rpm-ivh MQSeriesClient-6.0.0-0.i386.rpm
(4) 安装 WebSphere MQ 样本程序(其中包括amqsput、amqsget、amqsgbr和amqsbcg等)
[root@localhost mq]# rpm-ivh MQSeriesSamples-6.0.0-0.i386.rpm 样本程序安装在/opt/mqm/samp/bin 中。
(5)安装MQ其他软件包
[root@localhost mq]# rpm-ivh MQSeriesMan-6.0.0-0.i386.rpm
[root@localhost mq]# rpm-ivh MQSeriesJava-6.0.0-0.i386.rpm
[root@localhost mq]# rpm-ivh IBMJava2-SDK-1.4.2-0.0.i386.rpm
上面最后一步安装的是JDK运行环境,如果已经有相同或更高版本的JDK,不需要再安装。 (6) 安装过程创建了一个名为mqm 的用户和一个同样名为mqm 的组,此时,新用户是被锁定的,必须设置一个密码来解锁,这样才能正常使用该用户。用passwd 命令:
[root@localhost mq]# passwd mqm 以上操作均在root用户下操作,至此MQ6.0安装结束。MQ的配置相关命令操作均在mqm用户下。
注意:
如果执行crtmqm命令时提示
-bash-3.2$ crtmqm
-bash: crtmqm: command not found
则需要配置mqm用户的环境变量,编辑如下文件,并添加下面的内容,如下:
第一种方法: 相对第二种较安全 仅对 mqm用户有效
1)-bash-3.2$ vi /var/mqm/.bash_profile
PATH=$PATH:/opt/mqm/samp/bin:/opt/mqm/bin:bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
2)执行“.”命令,使这个文件生效
-bash-3.2$ . .bash_profile
3)再次尝试实行crtmqm或是dspmqm命令,即可发现已经生效。
第二种方法:
1、su root
2、vim /etc/profile
3、在最后面加上:PATH=$PATH:/opt/mqm/samp/bin:/opt/mqm/bin:bin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin
4、关闭远程终端重新打开,无需重启服务器
5、ok了!!
了解更多开源相关,去LUPA社区看看吧。
关于linuxmq是什么和linux向mq发送消息的命令的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。