跳转至

初始化数据

停止所有Broker服务

在集群中的每一个Broker节点上,执行停止命令,确保Broker进程已完全关闭

Bash
1
2
3
4
# 在Broker节点上执行
sh bin/mqshutdown broker

#通过 jps 命令确认 BrokerStartup 进程已不存在

清理Broker存储数据(核心步骤)

在每个Broker节点上,删除其配置的存储根目录(storePathRootDir)下的所有内容。默认路径通常是 $HOME/store/

Bash
1
2
3
# 请务必确认 storePathRootDir 的实际路径,例如 /opt/rocketmq-all-4.9.4-bin-release/store/
# 以下是一个示例命令,请根据你的实际路径修改
rm -rf /opt/rocketmq-all-4.9.4-bin-release/store/*

这个操作会清除所有CommitLog消息数据、ConsumeQueue逻辑队列、索引文件、主题配置、消费进度等

可选:清理NameServer数据

NameServer主要将路由信息存储在内存中。通常,在Broker数据清理并重启后,NameServer会从Broker接收新的路由信息并更新。 如果你希望NameServer也完全重新开始,可以重启NameServer服务(先停止再启动),或者删除其可选的持久化文件(如果配置了kvConfigPath)

Bash
1
2
3
4
5
6
# 注意启停顺序
# 停止
broker --> namesrv

# 启动
namesrv --> namesrv