Differences between version for MQ - ibm-mq

Where can I find the differences between the IBM MQ versions V8.0.0.5 and V9.0? I tried to look it up on IBM website but no luck.

IBM's v9 Knowledge center page "What's new in Version 9.0.0" lists new things in v9.0.
New family features
are:
Additional quality of protection for IBM MQ AMS
Web addressable access to the client channel definition table (CCDT)
IBM MQ AMS supported in non-IBM JREs in Java clients
Updated Resource Adapter for traditional WebSphere Application Server
Enhanced Unicode data conversion support
IBM MQ Managed File Transfer Protocol Bridge Agent logging enhancements
New features for distributed platforms
are:
Performance monitoring API and enhanced activity trace available through publish/subscribe
[Windows] LDAP authorization on Windows platforms
[UNIX] runmqsc command line editor for UNIX platforms
New z/OS® features
are:
Data manager page set statistics
JMS support within CICS OSGI Server
JMS support within IMS Server
Improved control of messages by using message expiry
Increased number of active logs
Using IBM z/OSMF to automate IBM MQ
IBM's v9 Knowledge center page "What's changed in Version 9.0.0" lists what has changed.
[V9.0.0.0]Changes to supported platforms
For IBM MQ Version 9.0, some changes are made to the platforms that
are supported.
[V9.0.0.0]Changes to commands
A number of commands have changed at IBM MQ Version 9.0
[V9.0.0.0]Command level changes for Version 9.0
The command level changes to 900 at IBM MQ Version 9.0
[V9.0.0.0]Deprecated, stabilized and removed features
A number of features are deprecated, stabilized or removed from IBM MQ
Version 9.0.
[z/OS][V9.0.0.0]z/OS: Prerequisites for Version 9.0
Some prerequisites have changed for Version 9.0.
[z/OS][V9.0.0.0]z/OS: Changes to OPMODE
In previous versions of IBM MQ, if a queue manager was started with
OPMODE=(COMPAT,vrm), new functions added at command level vrm would
always be available. In IBM MQ Version 9.0 this is no longer the case.

You need to look at "What's new" document which comes with every MQ release. Search for "IBM MQ Knowledge Center," and navigate to "What's new." Version 9.0 is here.

Related

IBM MQ installation Version 8

In one of the windows system the administrator has installed the IBM MQ version 8. But after installation we are not ale to see the IBM MQ (installation 1) listed in the services. and also not able to see the file amqsvc.exe file.
If we launch Prepare Websphere MQ wizard it also just exits without any actions.
But on the control panel -programs and features able to see the IBM MQ installation1 is present . how to find out if the installation was done correctly?
Was this a MQ client installation instead of MQ server installation? how to find out what is the issue here as the MQ service is not present or its related files?

IBM MQ Internet Pass-Thru licensing requirement

We have an IBM MQ Internet Pass-Thru V2.1.0.1(MQIPT) configured within our organization that consumes the messages published by an external organization 'X'. The external organization 'X' has distributed this MQIPT to use within our premises. We are trying to consume the messages published by 'X' to an IBM MQ (fully licensed) hosted on their side via the MQIPT hosted in our premises.
We have used the .NET library 'XMS.Net' (https://www.ibm.com/support/pages/xms-net-%E2%80%93-overview) to consume the messages via MQIPT. The licensing says it is free for a period of 90 days.
In this configuration, what is the licensing requirement that we need for using the XMS.NET IBM C# library?
Can anybody tell me if we need to purchase any licenses in addition to what 'X' already has? If yes, how much does it usually cost?
I am trying to get help from IBM, but considering their prioritization, I hope I can get a quicker answer from here.
Your question covers 2 separate products, MQ Client and MQ IPT.
XMS.Net is part of the MQ Client for .Net, which is a free product:
https://www.ibm.com/docs/en/ibm-mq/9.2?topic=information-mq-client-net-license
But MQIPT requires a license. Though I don't think it is licensed on its own, but as part of a full MQ license:
"If you have purchased IBM MQ entitlement, you can install as many copies as required of MQIPT. MQIPT installations are not counted against your purchased IBM MQ entitlement."
https://www.ibm.com/docs/en/ibm-mq/9.1?topic=overview-mq-internet-pass-thru
You will need to ask IBM whether the MQ license of company X covers the MQIPT installations in your network (unlikely), or what is the minimum MQ license you need to purchase to use MQIPT.

MQ Migration Process steps from lower version to Higher version[ MQ7 to MQ9]

Current version running is MQ7 in windows 2008 server. What to know about migration process steps from MQ7 to MQ8/MQ9?.New Version of MQ8/MQ9 Server to be installed and how existing Queue definition can be migrated?
Will Server Installation take care of QM definition also?
windows 2008 server will be good for mq9?
There is a MQ-Client7 contacting MQ-Server7, so if we upgrade MQ7 to MQ9 then MQ-Client also will be upgraded to MQ9?
There will be any issue in contacting MQ9-Client to MQ7 Server?
dspmqver will give MQ server details , how to verify MQ-Client version?
If you install the new version (V8 or V9) as an upgrade to the V7 installation on the same machine then then next time you start the queue manager it will be migrated to the new version.
If you install the new version alongside the V7 installation on the same machine, then you have to use the setmqm command to force the queue manager to move from V7 to the new version.
If you install the new version on a completely different machine, the no automatic migration can take place. You will have to create a brand new queue manager and then copy across the definitions from the old one.
The command to export all the object definitions is:
dmpmqcfg -m QM1 -x all > DEFS.mqs
The command to import all the object definitions is:
runmqsc QM1 < DEFS.mqs
The system requirements (e.g. minimum O/S levels) are documented by IBM here.
There is no requirement for the MQ Client to be the same version as the MQ Queue Manager. The MQ Client can be a higher version or a lower version than the MQ Queue Manager and still operate perfectly. The only thing to remember if the MQ Client is a higher version than the MQ Queue Manager is that new features cannot yet be used.
You can see the version of the MQ Client being used when it connects to the queue manager by looking in DISPLAY CHSTATUS for the field called RVERSION.

Add Server Details to connect to IBM Websphere MQ series in VB6

We are moving IBM Websphere MQ to a different server(VB6 app will be in different server).
I need to populate SET Server field.
I am using MQAX200.DLL to connect to MQ.
Please let me know how can i connect to different server from vb6.
Below is the code we are currently using to connect to Queue Manager:
Form1.txtstreamLog_File.WriteLine Date & " " & Time & " STATUS: Attempting to connect to the MQ Queue Manager: " & Form1.strManagerQueueName
Set mconMQ = New MQAX200.MQQueueManager
With mconMQ
'Set the Name of the Queue Manager (or allow to default)
.Name = Form1.strManagerQueueName
'Connect to Queue Manager
.Connect
'Get Connect Method Results & Display
mlngConnectionHandle = .ConnectionHandle
'Check Completion Code
If .CompletionCode <> MQCC_OK Then
Form1.txtstreamLog_File.WriteLine Date & " " & Time & " ERROR: Failed to connect to Queue Manager: " & Form1.strManagerQueueName & vbCr & _
"Reason Code: " & .ReasonCode & vbCr & _
"Reason Text: " & .ReasonName
ConnectQueueManager = False
Exit Function
End If
End With 'mconMQ
Form1.txtstreamLog_File.WriteLine Date & " " & Time & " STATUS: Connected to the Queue Manager successfully"
ConnectQueueManager = True
Exit Function
MQAX200.DLL is the dll used for IBM MQs depricated Microsoft ActiveX and VB6 connectivity. IBM MQ Classes for .NET are the recommended replacement technology.
Everything I found indicates you can only use the MQSERVER environment variable to provide connection details for a single queue manager or use a MQ Channel Table pointed to by the the MQCHLLIB/MQCHLTAB environment variables if you need to connect to multiple queue managers.
It has been documented in all recent versions of the Knowledge center (v7.0.1 is the oldest I could find) that MQAX (MQ ActiveX) support was stabilized at the IBM WebSphere® MQ Version 6.0 level:
MQ v7.0.1 Knowledge Center Page "Coding in ActiveX":
Support for ActiveX has been stabilized at the WebSphere® MQ Version 6.0 level. To exploit features introduced to WebSphere MQ later than Version 6.0, consider using .NET instead.
MQ v9.0 Knowledge Center Page "Object-oriented applications":
ActiveX
The IBM MQ ActiveX is commonly known as the MQAX. The MQAX is included as part of IBM MQ for Windows. Support for ActiveX has been stabilized at the IBM WebSphere® MQ Version 6.0 level. To exploit features introduced to IBM MQ later than Version 6.0, consider using .NET instead. Refer to Using the Component Object Model Interface (WebSphere MQ Automation Classes for ActiveX) for information about coding programs using the IBM MQ Object Model in ActiveX.
In addition IBM in the "IBM MQ V9.0 Software Announcement" has stated:
Function that is removed in IBM MQ V9.0
IBM MQ support for Microsoft ActiveX and VB6
IBM MQ support for Microsoft ActiveX and VB6 is deprecated. IBM MQ Classes for .NET are the recommended replacement technology.
In summary the interface you are using has been stabilized and has not been enhanced since IBM MQ v6.0 released in June 2005 and has only had defect fixes. In v9.0 it has been deprecated which indicates that IBM will remove it from a future release of the product.
Note that you also can not use TLS encryption or pass a username and password to MQ using the Microsoft ActiveX libraries and would be limited in ways to secure your SVRCONN channel from unauthorized connections.
I would suggest that you convert to the .NET libraries. The samples are found under the MQ installation directory in tools\dotnet\samples.
UPDATE 2017/04/17
IBM MQ v9 Knowledge center page "Deprecated, stabilized and removed features" has now been updated to also reflect that IBM MQ support for Microsoft ActiveX and VB6 is deprecated.
Deprecation of IBM MQ support for MicrosoftActive X and Microsoft Visual Basic 6.0
IBM MQ support for MicrosoftActive X and
Microsoft Visual Basic 6.0 is deprecated. IBM MQ classes for .NET are
the recommended replacement technology. See Using the Component
Object Model Interface (IBM MQ Automation Classes for
ActiveX)
and Coding in Visual
Basic.

MQ 6.0 testing by UFT 12.02

I am trying to configure test automation project in UFT 12.02 for IBM Websphere MQ 6.0
I am facing the following error while connecting to MQ Queue Manager
(To run tests with IBM’s MQ client, make sure to install the MQ client on all machines running these tests.)
as per the above error description I need to install MQ client on my machine, but I cannot install it because IBM has been stopped supporting MQ 6.0 accordingly I didn't find it anywhere.
I have configured the same but in IBM RIT (Rational Integration Tester) and it was only required to configure the JAR files (com.ibm.mq.jar & connector.jar)
My question is; Is it applicable in UFT to configure only above two JAR files (just like IBM RIT) or it is necessary to install the MQ 6.0 Client?
And can I test the MQ 6.0 through UFT along with installing MQ 7.0 Client instead of 6.0, taking in consideration that the AUT is IBM Websphere MQ 6.0?
Also if applicable, can anyone provide the MQ Client download URL rather than IBM website?
Prior to V8.0 it was required to install the full client to receive support. Just grabbing the jar files worked but you risked IBM not supporting it if you wanted to open a PMR.
As of v8.0, IBM offers an all-Java client. I just provided the download instructions in another answer so instead of copying them, I'll link to that answer:
WMQ V8 Connection Factory setup on Tomcat using JNDI
One of the reasons this was not previously supported was that the old Java jars didn't have as much diagnostic function built in. IBM relied on the full client install for binary cient-side tracing, test programs, etc. The v8.0 stand-alone jars are really the way to go if you need an all-Java solution.
Note that support is based on the QMgr's license, not the client license (because that's free). If you are running a v6.0 QMgr other than the Linux Itanium version, then either you are paying a LOT of money for IBM Support or are running unsupported. If it is the latter, then you can't open a PMR anyway.
An unpatched v6.0 QMgr is effectively not secure. Even if you have applied the recommended security configurations, enough security-relevant APARS have now been discovered that you should consider an unpatched QMgr as being wide open.
As Tim notes in the comments, any version of MQ Client is supported with any version of MQ QMgr. Head over to the SupportPacs page and look for ones with names like MQC**. Pro tip - If you download a new client, it comes with XA transactionality enabled. No need to go grab the transactional client jar file (which put you out of license compliance anyway).

Resources