常用命令
一台物理机器上可以有多个erlang节点(实例),每个节点可以运行多个应用程序,其中重要的应用程序有RabbitMQ、Erlang语言自带的Mnesia数据库,以及RabbitMQ相关的插件(如RabbitMQ Management)。可以将Erlang节点类比于java的JVM。
RabbitMQ Management 是一个用于操作RabbitMQ的管理界面,可以操作很多常用的操作,但是并不支持所有的操作,命令行支持所有功能。
rabbitmqctl命令行: 命令行比web管理界面更强大,web界面的命令只是rabbitmqctl命令的一个子集
应用程序和集群管理(Application and Cluster Management)、
集群配置(Cluster management)、
用户管理(User management)、
访问控制(Access Control)、
参数管理(Parameter Management)、
政策管理(Policy Management)、
服务器状态(Server Status)
Miscellaneous
rabbitmq-server // 同时启动erlang节点和应用程序
// 查看rabrabbitmqctl所支持的命令
rabrabbitmqctl
// 查看状态
rabbitmqctl status
//停止erlang node,同时关闭erlang节点和应用程序
rabbitmqctl stop
// 停止RabbitMQ服务,仅关闭erlang节点上的rabbit应用程序
rabbitmqctl stop_app
// 启动RabbitMQ服务
rabbitmqctl start_app
// 格式化rabbitmq node(在集群中需要满足一定的条件才能关闭)
rabbitmqctl reset
// 强制格式化rabbitmq node
rabbitmqctl force_reset
// 清除某个队列的所有消息
rabbitmqctl purge_queue <name>
// 添加用户
rabbitmqctl add_user <username> <password>
// 设置权限
rabbitmqctl set_permissions -p / <username> "." "." ".*"
// 列举权限
rabbitmqctl list_permissions -p <vhost>
// 列举用户的所有权限
rabbitmqctl list_user_permissions <username>
// 清除权限
rabbitmqctl clear_permissions -p <vhost> <username>
// 认证用户
rabbitmqctl authenticate_user <username> <password>
// 修改密码
rabbitmqctl change_password <username> <password>
// 列举用户
rabbitmqctl list_users
// 删除用户(删除用户时也会把用户相关的权限都删除)
rabbitmqctl delete_user <username>
// 设置tag, tag可以为none最小权限角色,management 管理员角色,policymaker决策者,monitoring 监控,administrator 超级管理员
rabbitmqctl set_user_tags <username> <tag>
// 添加虚拟主机
rabbitmqctl add_vhost <name>
// 删除虚拟主机
rabbitmqctl delete_vhost <name>
// 查看所有虚拟主机
rabbitmqctl list_vhost [<vhostinfoitem> ...]
// 列举默认虚拟机上的所有队列
rabbitmqctl list_queues
// 列出指定虚拟机上的队列
rabbitmqctl list_queues -p <vhost>
// 列举队列,包含队列名称、消息数目、消费者数目、内存使用情况、是否持久化、是否自动删除
rabbitmqctl list_queues name messages counsumers memory durable auto_delete
// 查看交换机
rabbitmqctl list_exchanges [name] [type] [durable] [auto_delete]
// 列举所有绑定
rabbitmqctl list_bindings [-p <vhost>]
command line tool
通过curl命令行来访问RabbitMQ Management 中的HTTP API(http://localhost:15672/api/), 返回的格式是json格式
rabbitmqadmin
// 列出服务器上的队列
rabbitmqadmin list queues
// 清空队列上的消息
rabbitmqadmin purge queue name=<queue_name>
rabbitmqadmin -u <username> -p <password> declare exchange name=<exchange_name> type=<type>
// 列举所有连接
rabbitmqadmin list connections name
// 关闭某个连接
rabbitmqadmin close connection name=<name>
管理RabbitMQ有4中方式
RabbitMQ Management(Web UI)
rabbitmqctl
command line tool(curl)
rabbitmqadmin
常用配置rabbitmq.config
实际开发中少不了对RabbitMQ的参数进行一些配置,如ip地址,端口号,允许RabbitMQ最大消耗的内存等配置,这些配置可以在配置文件中进行配置/usr/local/etc/rabbitmq/rabbitmq.config
https://blog.csdn.net/vbirdbest/article/details/78573825
https://blog.csdn.net/vbirdbest/article/list/8?t=1&