rabbitmqctl 是 RabbitMQ 的命令行管理工具,用于执行各种与 RabbitMQ 服务器管理相关的操作。以下是一些常见的 rabbitmqctl 命令及其使用方法:
1. 查看服务器状态
- 查看节点状态:
该命令会显示 RabbitMQ 节点的详细状态信息,包括节点名称、运行时间、内存使用情况、磁盘空间、已定义的交换器、队列等。rabbitmqctl status
2. 用户管理
- 添加用户:
例如:rabbitmqctl add_user <username> <password>rabbitmqctl add_user myuser mypassword - 删除用户:
rabbitmqctl delete_user <username> - 列出所有用户:
rabbitmqctl list_users - 更改用户密码:
rabbitmqctl change_password <username> <newpassword> - 设置用户标签:
用户标签用于指定用户的角色,如administrator、monitoring等。
例如,将用户rabbitmqctl set_user_tags <username> <tag1> <tag2>...myuser设置为管理员:rabbitmqctl set_user_tags myuser administrator
3. 权限管理
-
设置权限:
权限设置在虚拟主机级别。rabbitmqctl set_permissions -p <vhost> <username> <conf> <write> <read><vhost>:虚拟主机名称,通常为/表示默认虚拟主机。<conf>:配置权限,例如.*表示所有配置。<write>:写入权限,例如.*表示所有写入操作。<read>:读取权限,例如.*表示所有读取操作。
例如,为用户
myuser在默认虚拟主机上设置所有权限:rabbitmqctl set_permissions -p / myuser ".*" ".*" ".*" -
列出权限:
rabbitmqctl list_permissions -p <vhost> -
清除权限:
rabbitmqctl clear_permissions -p <vhost> <username>
4. 虚拟主机管理
- 添加虚拟主机:
例如:rabbitmqctl add_vhost <vhost>rabbitmqctl add_vhost myvhost - 删除虚拟主机:
rabbitmqctl delete_vhost <vhost> - 列出所有虚拟主机:
rabbitmqctl list_vhosts
5. 队列管理
- 列出所有队列:
可以使用rabbitmqctl list_queues-p <vhost>选项指定在特定虚拟主机上列出队列。 - 删除队列:
rabbitmqctl delete_queue -p <vhost> <queue>
6. 交换器管理
- 列出所有交换器:
同样,可以使用rabbitmqctl list_exchanges-p <vhost>选项指定虚拟主机。 - 删除交换器:
rabbitmqctl delete_exchange -p <vhost> <exchange>
7. 绑定管理
- 列出所有绑定:
可通过rabbitmqctl list_bindings-p <vhost>指定虚拟主机。 - 删除绑定:
rabbitmqctl delete_binding -p <vhost> --source <source> --destination-type <destination - type> --destination <destination> --routing - key <routing - key>
这些只是 rabbitmqctl 的一些常用操作,通过这些命令,你可以有效地管理 RabbitMQ 服务器的各个方面。