Environment variables

A list of server and client environment variables that are intended for customer use.

Examples of use

  • On UNIX and Linux® systems use: export [environment variable]=filename.
  • On Windows Systems, use: Set [environment variable]=filename.
  • On IBM® i systems use: ADDENVVAR ENVVAR(environment variable) VALUE(xx).
AMQ_BAD_COMMS_DATA_FDCS
This environment variable is effective when set to any value.
If the data that IBM MQ receives from a host over TCP/IP is in an incorrect format, for example because a network client has connected to an IBM MQ listener port and attempted to communicate with an unsupported application protocol, the queue manager writes an AMQ9207E error message to the queue manager error logs. IBM MQ listeners support TCP/IP connections from queue manager message channel agents (MCAs) and from MQI, JMS and XMS client applications.
Note: IBM MQ listeners do not support the application protocol used by AMQP and MQTT clients, these clients should instead connect to the network ports configured in the applicable AMQP channel or MQXR telemetry service.
A failure data capture (FDC) record containing the invalid data that IBM MQ has received might also be written. However, an FFST file is not generated if this is the beginning of a conversation with the remote side and the format is a simple known format such as a GET request from an HTTP web browser. If you want to override this to cause FFST files to be written for any bad data including simple known formats, you can set the AMQ_BAD_COMMS_DATA_FDCS environment variable to any value (for example, TRUE) and restart the queue manager.
[MQ 8.0.0.14 Jan 2020]AMQ_NO_BAD_COMMS_DATA_FDCS
This environment variable is effective when set to any value.
If IBM MQ does not recognize the initial data transmission when attempting to connect a non-IBM MQ client to an IBM MQ TCP/IP listener, this causes the queue manager to write an AMQ9207E error message to the queue manager error logs. A failure data capture (FDC) record is also written. You can suppress the generation of these diagnostic files with the AMQ_NO_BAD_COMMS_DATA_FDCS environment variable. When AMQ_NO_BAD_COMMS_DATA_FDCS is set to any value (for example, TRUE), this instructs IBM MQ not to generate FFSTs when reporting AMQ9207E error messages on the initial communications flow. To be effective, the environment variable should be set before starting the queue manager and listener processes.
The FDC continues to be generated in the case where a client sends valid IBM MQ protocol flows to the queue manager, and then sends invalid data, as this is indicative of a client issue that warrants further investigation.
Distributed[V8.0.0.12 May 2019]AMQ_CONVEBCDICNEWLINE
From Version 8.0.0, Fix Pack 12, you can use this environment variable to specify how IBM MQ is to convert an EBCDIC NL character into ASCII format. The environment variable takes the same values as the ConvEBCDICNewline attribute of the mqs.ini, that is, NL_TO_LF, TABLE, or ISO (see All queue managers). You can, for example, use the AMQ_CONVEBCDICNEWLINE environment variable instead of the ConvEBCDICNewline stanza attribute to provide ConvEBCDICNewline functionality on the client side in situations where the mqs.ini file cannot be used.
If both the stanza attribute and the environment variable are set, the stanza attribute takes precedence.
[V8.0.0.14 Jan 2020]AMQ_DMPMQCFG_QSGDISP_DEFAULT
From IBM MQ 8.0.0, Fix Pack 14, the inquiries on the disposition of a queue manager that are used by the dmpmqcfg command inquire only QSGDISP(QMGR) definitions by default. You can inquire additional definitions by using the environment variable AMQ_DMPMQCFG_QSGDISP_DEFAULT, which can be set to one of the following values:
LIVE
Include only, objects defined with QSGDISP(QMGR) or QSGDISP(COPY).
ALL
Include objects defined with QSGDISP(QMGR) and QSGDISP(COPY). If the queue manager is a member of a queue sharing group, QSGDISP(GROUP) and QSGDISP(SHARED) are also included.
COPY
Include only, objects defined with QSGDISP(COPY)
GROUP
Include only, objects defined with QSGDISP(GROUP); the target queue manager must be a member of a queue sharing group.
QMGR
Include only, objects defined with QSGDISP(QMGR). This is the default behavior if you use this environment variable, to match the existing behavior of dmpmqcfg.
PRIVATE
Include only, objects defined with QSGDISP(QMGR) or QSGDISP(COPY).
SHARED
Include only, objects defined with QSGDISP(SHARED).
[V8.0.0.14 Jan 2020]AMQ_LDAP_TRACE
From IBM MQ 8.0.0, Fix Pack 14, if the environment variable AMQ_LDAP_TRACE is set to a non-null value, it is possible to switch LDAP client trace on and off without also stopping or starting the queue manager. For more information, see Enabling dynamic tracing of LDAP client library code.
AMQ_MQS_INI_LOCATION
On UNIX and Linux systems, you can alter the location used for the mqs.ini file by setting the location of the mqs.ini file in this variable. This variable must be set at the system level.
AMQ_REVERSE_COMMIT_ORDER
This variable configures a queue manager so that in an XA transaction the IBM MQ queue manager change is committed after the corresponding database update is completed.
Do not set AMQ_REVERSE_COMMIT_ORDER without reading and understanding the scenario that is described in the following topic: Isolation level.
AMQ_NO_IPV6
This environment variable is effective when set to any value. When this environment variable is set, it disables the use of IPv6 while attempting a connection.
[V8.0.0.7 Jul 2017]
AMQ_SSL_ALLOW_DEFAULT_CERT
From IBM MQ 8.0.0, Fix Pack 7, when this variable is not set, an application can connect to a queue manager with a personal certificate in the client keystore only when the certificate includes the label name of ibmwebspheremq<userid>. By using the AMQ_SSL_ALLOW_DEFAULT_CERT environment variable, the certificate does not require the label name of ibmwebspheremq<userid>. That is, the certificate that is used to connect to a queue manager can be a default certificate, provided that a default certificate is present in the key repository, and the key repository does not contain a personal certificate with the prefix ibmwebspheremq<userid>. For more information, see the technote Specifying the userid in the SSL certificate label for an MQ client.
A value of 1 enables the use of a default certificate.
From IBM MQ 8.0, instead of using the AMQ_SSL_ALLOW_DEFAULT_CERT environment variable, an application can use the CertificateLabel setting of the SSL stanza in the mqclient.ini file. For more information, see Digital certificate labels, understanding the requirements and SSL stanza of the client configuration file.
[V8.0.0.8 Nov 2017]
AMQ_SSL_LDAP_SERVER_VERSION
From IBM MQ 8.0.0, Fix Pack 8, this variable can be used to ensure that either LDAP v2 or LDAP v3 is used by IBM MQ cryptographic components in cases where CRL servers require that a specific version of the LDAP protocol be used.
Set the variable to appropriate value in the environment that is used to start the queue manager or channel. To request that LDAP v2 is used, set AMQ_SSL_LDAP_SERVER_VERSION=2. To request that LDAP v3 is used, set AMQ_SSL_LDAP_SERVER_VERSION=3.
This variable does not affect LDAP connections established by the IBM MQ queue manager for user authentication or user authorization.
GMQ_MQ_LIB
When both the IBM MQ MQI client and IBM MQ server are installed on your system, MQAX applications run against the server by default. To run MQAX against the client, the client bindings library must be specified in the GMQ_MQ_LIB environment variable, for example, set GMQ_MQ_LIB=mqic.dll. For a client only installation, it is not necessary to set the GMQ_MQ_LIB environment variable. When this variable is not set, IBM MQ attempts to load amqzst.dll. If this DLL is not present (as is the case in a client only installation), IBM MQ attempts to load mqic.dll.
HOME
This variable contains the name of the directory which is searched for the mqclient.ini file. This file contains configuration information used by IBM MQ MQI clients on IBM i, UNIX and Linux systems.
HOMEDRIVE and HOMEPATH
To be used both of these variables must be set. They are used to contain the name of the directory which is searched for the mqclient.ini file. This file contains configuration information used by IBM MQ MQI clients on Windows systems.
LDAP_BASEDN
The required environment variable for running an LDAP sample program. It specifies the base Distinguished Name for the directory search.
LDAP_HOST
An optional variable for running an LDAP sample program. It specifies the name of the host where the LDAP server is running; it defaults to the local host if it is not specified
LDAP_VERSION
An optional variable for running an LDAP sample program. It specifies the version of the LDAP protocol to be used, and can be either 2 or 3. Most LDAP servers now support version 3 of the protocol; they all support the older version 2. This sample works equally well with either version of the protocol, and if it is not specified it defaults to version 2.
MQAPI_TRACE_LOGFILE
The sample API exit program generates an MQI trace to a user-specified file with a prefix defined in the MQAPI_TRACE_LOGFILE environment variable.
MQCCSID
Specifies the coded character set number to be used and overrides the native CCSID of the application.
MQCERTLABL
Defines the certificate label.
MQCERTVPOL
Determines the type of certificate validation used:
ANY
Use any certificate validation policy supported by the underlying secure sockets library. This setting is the default setting.
RFC5280
Use only certificate validation which complies with the RFC 5280 standard.
MQCHLLIB
Specifies the directory path to the file containing the client channel definition table (CCDT). The file is created on the server, but can be copied across to the IBM MQ MQI client workstation.
MQCHLTAB
MQCHLTAB specifies the name of the file containing the client channel definition table (ccdt). The default file name is AMQCLCHL.TAB.
MQS_IPC_HOST
When sharing IBM MQ files and the generated value of myHostName creates a problem set myHostName using the environment variable MQS_IPC_HOST
MQCLNTCF
Use this environment variable to modify the mqclient.ini file path.
MQ_CHANNEL_SUPPRESS_INTERVAL
Specifies the time interval, in seconds, during which the messages defined with MQ_CHANNEL_SUPPRESS_MSGS are to be suppressed from being written to the error log, together with the number of times that a message will be allowed to occur during the specified time interval before being suppressed. The default value is 60,5 which means any further occurrences of a given message are suppressed after the first five occurrences of that message in a 60 second interval. For more information, see Suppressing channel error messages from error logs.
The environment variable MQ_CHANNEL_SUPPRESS_INTERVAL is comparable to SuppressInterval in the qm.ini file.
MQ_CHANNEL_SUPPRESS_MSGS
Specifies IBM MQ channel error messages that are to be written to the error log only for the specified number of times that these messages are allowed to occur during the time interval defined in MQ_CHANNEL_SUPPRESS_INTERVAL before being suppressed until that time interval expires. For more information, see Suppressing channel error messages from error logs.
The environment variable MQ_CHANNEL_SUPPRESS_MSGS is comparable to SuppressMessage in the qm.ini file, although it is specified differently.
MQ_CONNECT_TYPE
On IBM MQ for IBM i, Windows, UNIX and Linux systems, use this environment variable in combination with the type of binding specified in the Options field of the MQCNO structure used on an MQCONNX call. See MQCONNX environment variable
[V8.0.0.7 Jul 2017]
MQ_CROSS_QUEUE_ORDER_ALL
When you set the MQ_CROSS_QUEUE_ORDER_ALL environment variable to a non-zero value, the message put order is maintained in a unit of work. This means that, if messages in a Unit of Work (UoW) are put onto multiple queues (for example, Q1, then Q2), when an MQCMIT is issued, the messages are delivered and made available in the same queue order in which they were PUT.

In a multi-queue manager environment, MQ_CROSS_QUEUE_ORDER_ALL must exist and have a non-empty value on both the sending and receiving side before each queue manager is started.

MQ_FILE_PATH
During the installation of the runtime package on the Windows platform, a new environment variable called MQ_FILE_PATH is configured. This environment variable contains the same data as the following key in the Windows Registry:

HKEY_LOCAL_MACHINE\SOFTWARE\IBM\WebSphere MQ\Installation\<InstallationName>\FilePath
MQIPADDRV
MQIPADDRV specifies which IP protocol to use for a channel connection. It has the possible string values of "MQIPADDR_IPv4" or "MQIPADDR_IPv6". These values have the same meanings as IPv4 and IPv6 in ALTER QMGR IPADDRV. If it is not set, "MQIPADDR_IPv4" is assumed.
MQ_JAVA_DATA_PATH
Specifies the directory for log and trace output.
MQ_JAVA_INSTALL_PATH
Specifies the directory where IBM MQ classes for Java are installed, as shown in IBM MQ classes for Java installation directories.
MQ_JAVA_LIB_PATH
Specifies the directory where the IBM MQ classes for Java libraries are stored. Some scripts supplied with IBM MQ classes for Java, such as IVTRun, use this environment variable.
MQNAME
MQNAME specifies the local NetBIOS name that the IBM MQ processes can use.
MQNOREMPOOL
When you set this variable, it switches off channel pooling and causes channels to run as threads of the listener.
MQPSE_TRACE_LOGFILE
Use when you Publish the Exit Sample Program. In the application process to be traced, this environment variable describes where the trace files must be written to. See The Publish Exit sample program
MQSERVER
MQSERVER environment variable is used to define a minimal channel. You cannot use MQSERVER to define an SSL channel or a channel with channel exits. MQSERVER specifies the location of the IBM MQ server and the communication method to be used.
MQ_SET_NODELAYACK
When you set this variable, it switches off TCP delayed acknowledgment
When you set this variable on AIX®, the setting switches off TCP delayed acknowledgment by calling the operating system's setsockopt call with the TCP_NODELAYACK option. Only AIX supports this function, so the MQ_SET_NODELAYACK environment variable only has an effect on AIX.
MQSNOAUT
Warning: This functionality is not recommended.
When you set this variable to any value it disables the object authority manager (OAM) and prevents any security checking. This might be suitable for a test environment. This includes both authorization and connection authentication functionality. TLS, Channel Authentication Records and Security Exits are unaffected.
The MQSNOAUT variable only takes effect when a queue manager is created.
Warning: To enable the OAM, you must delete the queue manager, delete the environment variable, and then recreate the queue manager without specifying MQSNOAUT.
MQSPREFIX
As an alternative to changing the default prefix, you can use the environment variable MQSPREFIX to override the DefaultPrefix for the crtmqm command.
MQSSLCRYP
MQSSLCRYP holds a parameter string that you can use to configure the cryptographic hardware present on the system. The permitted values are the same as for the SSLCRYP parameter of the ALTER QMGR command.
MQSSLFIPS
MQSSLFIPS specifies whether only FIPS-certified algorithms are to be used if cryptography is carried out in IBM MQ. The values are the same as for the SSLFIPS parameter of the ALTER QMGR command.
MQSSLKEYR
MQSSLKEYR specifies the location of the key repository that holds the digital certificate belonging to the user, in stem format. Stem format means that it includes the full path and the file name without an extension. For full details, see the SSLKEYR parameter of the ALTER QMGR command.
MQSSLPROXY
MQSSLPROXY specifies the host name and port number of the HTTP proxy server to be used by IBM Global Security Kit (GSKit) for OCSP checks.
MQSSLRESET
MQSSLRESET represents the number of unencrypted bytes sent and received on an SSL channel before the SSL secret key is renegotiated.
MQS_TRACE_OPTIONS
Use the environment variable MQS_TRACE_OPTIONS to activate the high detail and parameter tracing functions individually.
MQTCPTIMEOUT
This variable specifies how long IBM MQ waits for a TCP connect call.
MQSUITEB
This variable specifies whether Suite B compliant cryptography is to be used. In the instance that Suite B cryptography is used you can specify the strength of the cryptography by setting MQSUITEB to one of the following:
  • NONE
  • 128_BIT, 192_BIT
  • 128_BIT
  • 192_BIT
ODQ_MSG
If you use a dead-letter queue handler that is different from RUNMQDLQ the source of the sample is available for you to use as your base. The sample is like the dead-letter handler provided within the product but trace and error reporting are different. Use the ODQ_MSG environment variable to set the name of the file containing error and information messages. The file provided is called amqsdlq.msg.
ODQ_TRACE
If you use a dead-letter queue handler that is different from RUNMQDLQ the source of the sample is available for you to use as your base. The sample is like the dead-letter handler provided within the product but trace and error reporting are different. Set the ODQ_TRACE environment variable to YES or yes to switch on tracing
OMQ_PATH
This environment variable is where you can find the First Failure Symptom report if your IBM MQ automation classes for ActiveX script fails.
OMQ_TRACE
MQAX includes a trace facility to help the service organization identify what is happening when you have a problem. It shows the paths taken when you run your MQAX script. Unless you have a problem, run with tracing set off to avoid any unnecessary use of system resources. OMQ_TRACE is one of the three environment variables set to control trace. Specifying any value for OMQ_TRACE switches the trace facility on. Even if you set OMQ_TRACE to OFF, trace is still active. See Using trace
OMQ_TRACE_PATH
One of the three environment variables set to control trace. See Using trace
OMQ_TRACE_LEVEL
One of the three environment variables set to control trace. See Using trace
ONCONFIG
The name of the Informix® server configuration file. For example, on UNIX and Linux systems, use:

export ONCONFIG=onconfig.hostname_1
On Windows systems, use:

set ONCONFIG=onconfig.hostname_1
WCF_TRACE_ON
Two different trace methods are available for the WCF custom channel, the two trace methods are activated independently or together. Each method produces its own trace file, so when both trace methods have been activated, two trace output files are generated. There are four combinations for enabling and disabling the two different trace methods. As well as these combinations to enable WCF trace, the XMS .NET trace can also be enabled using the WCF_TRACE_ON environment variable. See WCF trace configuration and trace file names
WMQSOAP_HOME
Use when making additional configuration steps after the .NET SOAP over JMS service hosting environment is correctly installed and configured in IBM MQ. It is accessible from a local queue manager. See WCF client to a .NET service hosted by IBM MQ sample and WCF client to an Axis Java service hosted by IBM MQ sample
Also use when you install IBM MQ web transport for SOAP. See Installing IBM MQ Web transport for SOAP