Author |
Message
|
Rojeena |
Posted: Wed Feb 06, 2008 2:58 am Post subject: Deleted MQ files on Solaris 5.8 |
|
|
Newbie
Joined: 06 Jun 2005 Posts: 5
|
Hi,
I am just wondering if anybody can shed light on deleting specific MQ files from the /var/mqm directory.
At our end we use ciruclar logging and application use non-perssistent messages.
What would happen if Checkpoint file amqalchk.fil and Control file amqhlctl.lfh have been deleted from the /var/mqm by mistake or corrupted?
I have tried that in test enviroment and the good thing that I could restart the queue manager and system will recreate new ones. However no sure what else would be
impacted from logging perspective after queue manager is up and running. Would the queue manager behave correctly?
Thanks. |
|
Back to top |
|
 |
Vitor |
Posted: Wed Feb 06, 2008 3:00 am Post subject: Re: Deleted MQ files on Solaris 5.8 |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Rojeena wrote: |
application use non-perssistent messages.
|
Non-persistent messages are not logged. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
jefflowrey |
Posted: Wed Feb 06, 2008 3:49 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
Deleting anything from /var/mqm/, without knowing exactly what you're doing is a bad, bad idea. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
csmith28 |
Posted: Wed Feb 06, 2008 1:50 pm Post subject: |
|
|
 Grand Master
Joined: 15 Jul 2003 Posts: 1196 Location: Arizona
|
Jeff is right, especially regarding anyting under /var/mqm/log or /var/mqm/qmgr/<QMGRNAME>/queues.
I have lost count of how many MQManagers I have had to rebuild because someone deleted a Queue File or Deleted a circular log. _________________ Yes, I am an agent of Satan but my duties are largely ceremonial. |
|
Back to top |
|
 |
Rojeena |
Posted: Thu Feb 07, 2008 2:24 am Post subject: |
|
|
Newbie
Joined: 06 Jun 2005 Posts: 5
|
Hi,
Thanks for the advice.
However this is exactly why I have asked the question. Last week the q file has been deleted by Tester and I had to recover it without recreating the queue manager. But still you did answer my question that if the control file and checkpoint file have been deleted. But I managed to restart the queue manager without recreating. Will the queue manger behave as if new one but still retain the objects I have defined eariler or will I expect a bad behaviour due to some internals settings.
Thanks. |
|
Back to top |
|
 |
Vitor |
Posted: Thu Feb 07, 2008 5:53 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
As you're using circular logging and not actually logging anything then I'm not surprised the queue manager was able to recover.
IIRC there's a procedure in the System Admin manual for recovering from corrupt logs by recreating them on another queue manager.
Of course the root cause of your problem is that a tester had access to /var/mqm. These files should be secured against tampering; there are worse things to delete than the log files. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
mvic |
Posted: Thu Feb 07, 2008 5:59 am Post subject: |
|
|
 Jedi
Joined: 09 Mar 2004 Posts: 2080
|
Vitor wrote: |
Of course the root cause of your problem is that a tester had access to /var/mqm. These files should be secured against tampering; there are worse things to delete than the log files. |
Exactly the right point. You need to be a member of the 'mqm' group to be allowed to write/delete those files. Users in the 'mqm' group are MQ administrators. |
|
Back to top |
|
 |
Rojeena |
Posted: Thu Feb 07, 2008 7:46 am Post subject: |
|
|
Newbie
Joined: 06 Jun 2005 Posts: 5
|
Hi,
I guess Tester should not be in the mqm group. Thanks for the info in regarding recreating the queue manager on different machine and use that to recover.
Just fyi, I have recovered the q file but copying another q file from another locally defined q to the missing one, then started the queue manager otherwise was refused to start, then deleted the damaged one and recreating the missing q file via a script. It has worked.
Thanks. |
|
Back to top |
|
 |
Vitor |
Posted: Thu Feb 07, 2008 7:56 am Post subject: |
|
|
 Grand High Poobah
Joined: 11 Nov 2005 Posts: 26093 Location: Texas, USA
|
Rojeena wrote: |
I guess Tester should not be in the mqm group. |
I guess!
No-one should be in that group who a) doesn't have a legitimate reason & b) hasn't got MQ administrative training (even if it's the basic "don't do any of these" training).
Certainly no-one working at an application level needs that kind of access. _________________ Honesty is the best policy.
Insanity is the best defence. |
|
Back to top |
|
 |
mvic |
Posted: Thu Feb 07, 2008 8:14 am Post subject: |
|
|
 Jedi
Joined: 09 Mar 2004 Posts: 2080
|
Rojeena wrote: |
Thanks for the info in regarding recreating the queue manager on different machine and use that to recover. |
Don't rely on a procedure like this in production. It might not work. If a queue file on a circular-logging queue manager gets corrupt, then if that queue contains messages, you have probably lost those messages. The solution MQ offers for this is linear logging, and rcdmqimg/rcrmqobj.
Ultimately there's always a finite possibility to lose your disks, and that's where DR planning, regular backups, etc. come in. In the particular case mentioned here, though, the problem can be avoided with security/access controls and good admin procedures. |
|
Back to top |
|
 |
|