mq常用命令
添加可视化rabbitmq-plugins enable rabbitmq_management
然后访问http://ip:15762
查看mq信息rabbitmqctl status
添加用户rabbitmqctl add_user user 123456
赋予user权限rabbitmqctl set_permissions -p / user ".*" ".*" ".*"
赋予root用户administrator角色rabbitmqctl set_user_tags user administrator
查看当前用户列表rabbitmqctl list_users
修改密码rabbitmqctl change_password Username 'Newpassword'
列出集群状态rabbitmqctl cluster_status
查看vhost和队列rabbitmqctl list_vhosts
rabbitmqctl list_queues --vhost=ecscloud
添加一个test队列:python rabbitmqadmin declare queue name=test auto_delete=false durable=false --username=xxx --password=xxx
查看队列:rabbitmqctl list_queues
使用 rabbitmqctl 创建 Policies 命令格式如下: ``` rabbitmqctl set_policy "" '' --priority --apply-to ```
对应实例: rabbitmqctl set_policy TTL ".*" '{"message-ttl":60000}' --apply-to queues
rabbitmqctl set_policy ha-fed "^hf\." '{"federation-upstream-set":"all","ha-mode":"all"}' --priority 1 --apply-to queues
Policy 各属性解释:
name:名字,可以使用任意 ASCII 字符,建议不要使用空格
pattern:用于匹配队列/交换机的正则表达式
definition:JSON格式的一组键值对,表示设置的属性,会被注入匹配队列/交换机
priority:优先级。一个队列/交换机只会有一个生效的 Policy,如果匹配多个 Policy,则优先级数值最大的 Policy 生效
apply-to:该 Policy 是针对队列,还是交换机,还是同时针对两者
#清除rabbitmqctl clear_policy [-p <vhost>] <name>
#查看rabbitmqctl list_policies [-p <vhost>]
例如:
##set_policy
rabbitmqctl set_policy -p vh_test1 ha "^" '{"ha-mode":"all","ha-sync-mode":"automatic"}'
Setting policy "ha" for pattern "^" to "{\"ha-mode\":\"all\",\"ha-sync-mode\":\"automatic\"}" with priority "0"
##list_policies
rabbitmqctl list_policies -p vh_test1
Listing policies
vh_test1 ha all ^ {"ha-mode":"all","ha-sync-mode":"automatic"} 0
##clear_policy
rabbitmqctl clear_policy -p vh_test1 ha
Clearing policy "ha"
生成环境
rabbitmqctl list_policies --vhost=ecscloud
rabbitmqctl list_policies --vhost=celery
查看所有的队列:rabbitmqctl list_queues
清除所有的队列:rabbitmqctl reset
查看用户:rabbitmqctl list_users
查看状态:rabbitmqctl status
查看集群状态:rabbitmqctl cluster_status