Can you please tell how the environment variable of MQ can be checked in LINUX, AIX or SunOS.
For example how to check MQSNOAUT variable. Thank You.
If the MQSNOAUT variable is set to any value when the queue manager is created, OAM is turned off. If the MQSNOAUT variable is set any other time besides queue manager creation it has no effect. This is documented on the IBM MQ v7.1 Knowledge Center page "MQSNOAUT":
When you set this variable it disables the object authority manager
(OAM) and prevents any security checking.
The MQSNOAUT variable only takes effect when a queue manager is
created.
If you want to check if the MQSNOAUT variable is set before you run the crtmqm command to create a new queue manager, on Unix you can as provided by #buzyjess just run the following:
echo $MQSNOAUT
If you want to check if OAM is turned off on a running queue manager run the following command:
DIS QL(SYSTEM.AUTH.DATA.QUEUE) IPPROCS
If the IPPROCS has a value of 0 the OAM is turned off on the queue manager.
Turning off OAM is not a good solution even on Test/Dev queue managers and is not something I would recommend you do. By leaving OAM turned on you are able to set things up properly as you would in a production environment, this will leave no surprises when you are ready to move to production.
Do you want to know the value of the environment variable ?
echo $variable_name
Or
Check whether it is set ?
set | grep variable_name
Related
I'm trying to create IBM MQ subs via command line on a linux installation and I get:
AMQ8135: Not authorized.
My logs show:
AMQ8009: Entity '' has insufficient authority to access topic string 'WW/XX/YY'.
EXPLANATION: The specified entity is not authorized to access the required topic.
The following permissions were requested: altusr/ctrl
It looks like the command line isn't getting the entity value from where ever it was trying to find, not sure where that is!
But the confusing part is that creating of other mq objects(queues/topics) work just fine on command line and even the create subs works from MO71 and failing on cmd.
File permission look good and env variable also looked fine to me unless!
cmd- DEFINE SUB('ABC.1') TOPICSTR('xx/yy/zz') DEST('lq.abc')
Anyone one ran into such/fixed such issue?
In order to successfully run a DEFINE SUB command, the user ID that you are running it with requires the following authorities (you can work these out from looking at the whole of the AMQ8009 message in your AMQERR01.LOG, specifically the EXPLANATION: section).
ctrl on the nearest administrative topic object
put on the named destination queue
Also read
IBM Knowledge Center: Authorizations for commands
IBM Knowledge Center: MQSUB - Usage Notes (for authority for output - put - needed for subscription)
As an example, let's assume:-
TOPIC(XYZ) is defined with TOPICSTR('xx/yy/zz')
QUEUE(LQ.ABC) exists
The non-privileged user ID running the command is a member of the group mqgemadm
Then you need to set the following two privileges (over and above whatever you might have already set for this group in order to be able to issue commands in general):-
SET AUTHREC PROFILE(XYZ) OBJTYPE(TOPIC) GROUP('mqgemadm') AUTHADD(ctrl)
SET AUTHREC PROFILE(LQ.ABC) OBJTYPE(QUEUE) GROUP('mqgemadm') AUTHADD(put)
If you believe that your user id already has these permissions and the reason it is failing is because the user id is not making it to the command, you could try adding the SUBUSER field to the command.
DEFINE SUB('ABC.1') TOPICSTR('xx/yy/zz') DEST(LQ.ABC) SUBUSER('mqgemusr')
If this works, but without SUBUSER still fails, suggest you report the defect to IBM via a PMR/support case.
I am trying to find if there is any parameter which will keep the Consumption Parameters as the previous workable state after a full restart of Weblogic Server.
I would like to restore JMSservers to their last known state after a reboot-restart.
I have tested and i have enabled the ConsumptionPaused to true in a JMSServer via wlst and I have done a full restart but after the restarting the ConsumptionPaused has changed to false.
Please for your help.
I think you can achieve this using the setConsumptionPausedAtStartup method on the JMSServerMBean mbean
Finally, I have found that with the parameter ConsumptionPausedAtStartup enabled, after the restart of Weblogic then all the osb resources under the destination of JMSServer will have the ConsumptionPaused as true in JMS Queue layer level and not in JMS Server layer.
If you will not disabled the parameter ConsumptionPausedAtStartup, then every time you will restart the server then all the queues under this JMSServer will be with ConsumptionPaused as true.
Best Regards,
Nickname
I am looking for a command to change the message broker message flow instance in the run time. I know it is quite easy with MB explorer. But I am more interested towards the server side mqsi command. Ours is a AIX env with message broker 8 installed.
The number of instances a message flow has on the execution group is configured in the BAR file, before deployment.
If you want to change the number of additional instances you will need to redeploy your flow.
You can use the mqsiapplybaroverride command to change the configuration of the flow in the BAR file, and the mqsideploy command to redeploy the BAR.
As of IIB v9 you can control the number of instances dynamically at runtime by assigning a workload management policy.
See the description here:
http://www-01.ibm.com/support/knowledgecenter/SSMKHH_9.0.0/com.ibm.etools.mft.doc/bn34262_.htm
Once you have assigned a policy you can change it using the mqsichangepolicy command specifying an xml policy document that has a different number of instances.
Alternatively you can use the web ui to change it directly on the running broker.
When I tried to start an FTE agent in the command prompt , it displays the error message as "An internal error has occurred. Unable to complete the command because the agent directory does not exist".
What would be the reason for this? It was working fine until yesterday. And is there any way to start an agent in MQ FTE itself? I use fteStartAgent in command prompt each time to start an agent.
Kindly advise me on this....
There are a few possible reasons for this. It is possible that the default properties were changed and now point to an invalid location. This usually happens when the different components are installed and you select to provide the connection details again rather than to reuse the existing configuration.
Another possibility is that the default properties have been changed to point to a different Coordination QMgr. Sometimes people want to run Prod and Dev agents on the same host and set up connectivity to more than one Coordination QMgr. The result is that the default properties can point to only one at a time and so some agent directories are found while others are not. The trick to making this work is to use the -P option to select the proper Coordination QMgr.
I try to create a WebSphere queue manager in production env. Before this I manage to create the queue manager in the development env with no problem.
I'm using this script to create the queue manager:
crtmqm -u SYSTEM.DEAD.LETTER.QUEUE test1.qm
But it give no response (no error or success message).
When I try to start the queue manager (strmqm test1.qm) it give
"AMQ8118: WebSphere MQ queue manager does not exist."
Then I notice lots of strange thing that supposed not happen:
I can run the "crtmqm -u SYSTEM.DEAD.LETTER.QUEUE test1.qm" several times without any error
I can just type crtmqm and got no response
I can type crtmqm -y (which is not possible since there is no -y argument) and still no response
Can anyone tell me what is wrong?
If you are on UNIX, it may be that the OS kernel parameter requirements have not been met. Check the relevant WMQ Quick Beginnings manual for the platform.