需求原因:因须要将部分持久化的队列改为非持久化,要删除已经创建的队列,但队列太多了,一个个删除要很久,最重要的是设备还要连接,有部分队列删除了还会再创建。。所以须要一个可以一次性删除所有队列的方法。。
最后发现,大部分方法都比较繁琐,所以准备直接还原设置。
1.登陆服务器,找到mq的安装目录
使用命令:ps -ef | grep rabbitmq
响应值:
root 1934 13974 0 15:17 pts/0 00:00:00 grep --color=auto rabbitmq
root 13454 1 4 10:45 ? 00:11:14 /usr/local/erlang/lib/erlang/erts-9.3/bin/ -W w -A 64 -P 1048576 -t 5000000 -stbt db -zdbbl 128000 -K true -- -root /usr/local/erlang/lib/erlang -progname erl -- -home /root -- -pa /usr/local/RabbitMQ/ebin -noshell -noinput -s rabbit boot -sname rabbit@localhost -boot start_sasl -kernel inet_default_connect_options [{nodelay,true}] -sasl errlog_type error -sasl sasl_error_logger false -rabbit error_logger {file,"/usr/local/RabbitMQ/var/log/rabbitmq/rabbit@"} -rabbit sasl_error_logger {file,"/usr/local/RabbitMQ/var/log/rabbitmq/rabbit@"} -rabbit enabled_plugins_file "/usr/local/RabbitMQ/etc/rabbitmq/enabled_plugins" -rabbit plugins_dir "/usr/local/RabbitMQ/plugins" -rabbit plugins_expand_dir "/usr/local/RabbitMQ/var/lib/rabbitmq/mnesia/rabbit@localhost-plugins-expand" -os_mon start_cpu_sup false -os_mon start_disksup false -os_mon start_memsup false -mnesia dir "/usr/local/RabbitMQ/var/lib/rabbitmq/mnesia/rabbit@localhost" -kernel inet_dist_listen_min 25672 -kernel inet_dist_listen_max 25672 -noshell -noinput
这其中,可以找到所在目录为:/usr/local/RabbitMQ/sbin
- 停止对外应用服务:rabbitmqctl stop_app
- 重置:rabbitmqctl reset
- 启动应用服务:rabbitmqctl start_app
好了,登陆管理界面,就会发现创建的所有的队列已经没有了。
但要注意,你的设置同样也没有了,,比如你添加的账户等,这个须要自己加回来。