1. 程式人生 > >RabbitMQ基礎操作命令

RabbitMQ基礎操作命令

RabbitMQ基礎操作命令

1:啟動服務(兩種方式)

   rabbitmq-server start  
   service rabbitmq-server start

2:檢視Connection,Queue,Channel,User

   rabbitmqctl list_connections
   rabbitmqctl list_queues
   rabbitmqctl list_channels
   rabbitmqctl list_users

3:檢視叢集狀態

   rabbitmqctl cluster_status

4:加入叢集 (注意各節點上erlang版本不同也會導致叢集的失敗)

    rabbitmqctl stop  
    rabbitmqctl -detached(各節點均以單磁碟節點的叢集方式各自執行)
    檢視下狀態rabbitmqctl cluster_status  
    接下來加入叢集  
    rabbitmqctl stop_app
    rabbitmqctl join_cluster --ram(以磁碟節點還是記憶體節點加入) rabbit@hostname
    rabbitmqctl start_app
5:退出叢集
    磁碟節點通過下述命令來退出叢集
    [[email protected]34
~]# rabbitmqctl forget_cluster_node [email protected] Removing node '[email protected]' from cluster ... ...done. [[email protected]34 ~]# rabbitmqctl cluster_status Cluster status of node '[email protected]' ... [{nodes,[{disc,['[email protected]']}]}, {running_nodes,['
[email protected]
'
]}, {partitions,[]}] ...done. 注:記憶體節點可以通過下述命令變成獨立節點  rabbitmqctl stop_app   rabbitmqctl reset   rabbitmqctl start_app

6: rabbitmqctl list_queues命令

檢視rabbitmqctl說明文件可以發現
list_queues [-p <vhostpath>] [<queueinfoitem> ...]
<queueinfoitem> must be a member of the list [name, durable, auto_delete, 
arguments, policy, pid, owner_pid, exclusive_consumer_pid, 
exclusive_consumer_tag, messages_ready, messages_unacknowledged, messages, 
consumers, active_consumers, memory, slave_pids, synchronised_slave_pids, 
status].
看其含義就是如果帶有<queueinfoitem>引數,則其只能是[name, durable, auto_delete,...這個列表中的一個,比如說  
[[email protected]34 ~]# rabbitmqctl list_queues name durable messages
Listing queues ...
Hello Muyi  false   1
...done.

7:設定使用者名稱,密碼,許可權

[[email protected]34 ~]# rabbitmqctl list_users
Listing users ...
guest   [administrator]
...done.
[[email protected]34 ~]# rabbitmqctl add_user muyi y132132
Creating user "muyi" ...
...done.
[[email protected]34 ~]# rabbitmqctl set_user_tags muyi administrator
Setting tags for user "muyi" to [administrator] ...
...done.
[[email protected]34 ~]# rabbitmqctl list_users
Listing users ...
guest   [administrator]
muyi    [administrator]
...done.
[[email protected]34 ~]# rabbitmqctl list_user_permissions guest
Listing permissions for user "guest" ...
/   .*  .*  .*
...done.
[[email protected]34 ~]# rabbitmqctl list_user_permissions muyi
Listing permissions for user "muyi" ...
...done.
此處設定許可權時注意'.*'之間需要有空格 三個'.*'分別代表了conf許可權,read許可權與write許可權
例如:當沒有給muyi設定這三個許可權前是沒有許可權查詢佇列,在ui介面也看不見
[[email protected]34 ~]# rabbitmqctl set_permissions -p / muyi '.*' '.*' '.*'
Setting permissions for user "muyi" in vhost "/" ...
...done.
[[email protected]34 ~]# rabbitmqctl list_users
Listing users ...
guest   [administrator]
muyi    [administrator]
...done.

End