【发布时间】:2010-12-06 08:57:09
【问题描述】:
我对 MSMQ 很陌生。 我们有一个使用 MSMQ 的关键系统,由于资源不足而无法启动。看来 MSMQ 已满负荷。 我正在尝试清除消息(甚至删除不必要的队列),但在清除时收到以下错误:
无法从队列中删除所有消息。 错误:对消息队列系统的访问被拒绝。
我有哪些选择?有没有办法在服务关闭时删除队列?
【问题讨论】:
-
好的,似乎个别队列的权限发生了某种变化。还在想办法。
标签: msmq
我对 MSMQ 很陌生。 我们有一个使用 MSMQ 的关键系统,由于资源不足而无法启动。看来 MSMQ 已满负荷。 我正在尝试清除消息(甚至删除不必要的队列),但在清除时收到以下错误:
无法从队列中删除所有消息。 错误:对消息队列系统的访问被拒绝。
我有哪些选择?有没有办法在服务关闭时删除队列?
【问题讨论】:
标签: msmq
获取 Queue Explorer 的副本 - 这是一个商业应用程序,但试用版功能齐全,在调试 MSMQ 时值得一试http://www.cogin.com/mq/
如果你没有权限,那么你就没有权限!你是盒子管理员吗?如果您转到计算机管理并右键单击您的一个私有队列并选择属性,您可以访问安全选项卡并在那里编辑/查看权限吗?
【讨论】:
如果您在机器上打开计算机管理,请展开服务和应用程序节点(2008 年的功能)并右键单击消息队列服务。
右键单击“属性”选项并将其打开到“常规”选项卡。
您可以指定消息的存储限制——您可能已经达到消息存储的上限。如果您暂时增加此值,它可能会允许您返回消息传递系统,以便清除这些队列并恢复操作。
如果做不到这一点,如果您可以处理消息丢失的问题(如果您尝试清除,我认为没问题),也许可以删除队列并重新创建它。
【讨论】:
有一个更简单的方法:
【讨论】:
我认为存在版权问题。
您无法授予权限,然后执行以下步骤以强制删除队列。
Message Queuing Triggers, Net.Msmq Listener Adapter Message Queuing.
转到 C:\Windows\System32\msmq\storage\lqs
现在在记事本或记事本++中打开文件
在QueueName=\private$\YourQueueName查看队列名称
删除文件之前backup the file。现在delete that file。
不要删除没有您的队列名称的其他文件。
风险自负。
现在开始关注服务
Message Queuing Triggers, Net.Msmq Listener Adapter Message Queuing.
这个技巧对我有用...
【讨论】: