Aye*_*let 11 activemq-classic jms message-queue
有没有办法通过命令行(win/linux)删除/清除ActiveMQ中的所有队列?我只能找到特定队列的命令.或者也许有办法通过activeMQ管理员这样做?同样,我只找到了如何逐个删除/清除队列,这可能非常繁琐.
谢谢!
Vih*_*har 18
你可以activemq.xml稍微调整一下:
<broker deleteAllMessagesOnStartup="true" ...>
Run Code Online (Sandbox Code Playgroud)
这适用于KahaDB消息存储(它有JDBC消息存储存在问题),所有消息都被删除,随后队列被清除.
如果您希望删除所有队列,重新启动代理将不是一个昂贵的选项来清理所有内容.
我开发了自己的 ActiveMQ 命令行实用程序 (activemq-cli) 来执行此操作。您可以在这里找到它:https : //github.com/antonwierenga/activemq-cli(命令“purge-all-queues”或“remove-all-queues”)。
从版本 5.0 开始,这似乎可以使用 ActiveMQ 本身提供的 CLI 来完成:
$ ActiveMQ/bin/activemq purge
Run Code Online (Sandbox Code Playgroud)