WebSphere MQ Seems that single-MQ-Server-systems are more simple. That's good. It does look like the Linux trial download is 32 bit. Says supports 32 bit JDKs. Says supports only Gcc 2.9.5 to 3.4. I have 4.2. Maybe this is just for client apps? Says requires IBM 32-bit SDK 1.4.2. Requires GSKit. Where's this install to? MQ includes "MQ base java", which is a non-JMS Java API for MQ (besides MQ classes for JMS). "Webshere MQ Java" = both of these. Installs to /opt/mqm, working data stored to /var/mqm. Can be sym links. /var/mqm >= 50M for server; >= 15M for client. /var/mqm (other than /var/mqm/errors) must be a local FS. Docs say it requires these before installing, but it actually creates them just fine, but CREATE THEM IF YOU DON'T WANT IT TO CHOOSE ID NUMBERS! groupadd mqm useradd -g mqm -d /var/mqm (Install script gives bash shell, but does it need it?) Grant MQ administrators (not users) the mqm group. UNINSTALLATION Just remove the rpms, and wipe /var/mqm. Remove the mqm uid and gid AFTER YOU VERIFY you have removed all FS nodes using them. INSTALLATION N.b. Man pages are installed to /usr/man, which is not a default MANPATH location for Linux. So add /usr/man to MANPATHs. Run ./mqlicense.sh -accept Use rpm to installall desired components. At least rpm -Uvh MQSeriesRuntime-6.*-i386.rpm MQSeriesServer-6.*-i386.rpm Try --nodepts switch to rpm to get past dependency problems. Other important components: b = needed for both client and server MQSeriesSamples b MQSeriesJava b MQSeriesConfig + MQSeriesIES30 server MQ Explorer MQSeriesMan server man pages (I believe that gsk* is only required for SSL?) SOLARIS: Install all dir package INTERACTIVELY (mqm, gsk7bas, bsk7bas64. Seems that gsk7bas* packages are required on Solaris, regardless of SSL. Select options: WebSphere MQ Server, Man pages, Sample programs, [WebSphere MQ Client libraries?]. Explorer don't work on Solaris. SINGLE-SERVER MQ Validation. As a mqm group user: crtmqm -q venus.queue.manager # create queue manager strmqm # start queue manager runmqsc # run MQSC interpreter (has no prompt) define qlocal (orange.queue) end # I *think* that the amqs* sample programs are installed by default ? # !! /opt/*** on Solaris! /usr/mqm/samp/bin/amqsput ORANGE.QUEUE # Then enter msg + blank line /usr/mqm/samp/bin/amqsget ORANGE.QUEUE SINGLE-SERVER JMS (graphical) Validation. As a mqm group user: # THIS REQUIRES INSTALLATION OF MQSeriesSamples component Either . /opt/mqm/java/bin/setjmsenv for 32 bit JVM only Or export CLASSPATH=/opt/mqm/java/lib/com.ibm.mq.jar;\ /opt/mqm/java/lib/com.ibm.mqjms.jar; /opt/mqm/sample/java/base; /opt/mqm/sample/java/jms; export MQ_JAVA_INSTALL_PATH=/opt/mqm/java export MQ_JAVA_DATA_PATH=/var/mqm export MQ_JAVA_LIB_PATH=... to match 32 or 64 bit JVM /opt/mqm/java/lib for 32-bit /opt/mqm/java/bin/postcard # Will create queue manager if none exist # After that's running, run another instance at the same time /opt/mqm/java/bin/postcard # Send messages between the two postcard instances # There must obviously be a connection between the queue managers # which you choose. For simple case, select same queue manager. The listener creates (if necessary) and listens to a queue named "postcard", reading only those with CorrelId field matching recipient. The sender looks for default queue manager (or one with name you specify as "On:". Only 32 bit is working on my 64 bit server! Uses "Expiry" of 48 hours so unread messages don't clutter up forever. MQSC COMANDS Automatically converted to uppercase unless enclosed in single quotes, similar to SQL. To start MQ Explorer, run strmqcfg Really useful commands. Some have man pages. If no man page, then run with "-h" to cause a syntax error and get banner. dspmq SET UP MQ STUFF FOR GLM TO ACCESS crtmqm -c 'BGI GLM' -q QM.US.T.01 strmqm QM.US.T.01 runmqsc QM.US.T.01 define channel (glm) chltype(svrconn) descr('BGI GLM') (NO: runmqlsr -t tcp -m qm.us.t.01) nohup runmqlsr -t tcp -m QM.US.T.01 -p14027 > /tmp/mqlst.log 2>&1 & runmqsc define qlocal (q.test.jboss.test_request) define qlocal (q.test.jboss.test_response) GREAT mqsc COMMAND lists all queues DISPLAY QLOCAL(*) curdepth