rocketmq删除topic

删除指定的topic、在删除不了topic的情况下的处理办法。

删除指定的topic

首先查询namesrv上的topic列表

1
2
3
4
5
6
7
8
9
10
[root@lehoon bin]# ./mqadmin topicList -n 192.168.1.182:9876
topic_test
broker-b
BenchmarkTest
OFFSET_MOVED_EVENT
BubiaoCluster
broker-a
TBW102
SELF_TEST_TOPIC
%RETRY%ConsumerGroupName

根据查询出来的topic列表,删除指定的topic

1
2
3
4
5
6
7
8
9
[root@lehoon bin]# ./mqadmin deleteTopic
usage: mqadmin deleteTopic -c <arg> [-h] [-n <arg>] -t <arg>
-c,--clusterName <arg> 从哪个集群上删除topic
-h,--help 打印帮助文档
-n,--namesrvAddr <arg> namesrv地址 例如: 192.168.0.1:9876;192.168.0.2:9876
-t,--topic <arg> 待删除的topic名称,根据查询出来的删除或者指定的名称删除
例如:删除topic_test,则命令如下:
[root@lehoon bin]# ./mqadmin deleteTopic -c clustertest -n 192.168.1.182:9876 -t topic_test

删除不了指定的topic

该情况在topic创建的时候,topic名称中加入了空格、特殊字符的情况下,通过mqadmin delete topic是删除不了的。
这种情况下,1是忽略这个topic、2是停止namesrv和broker后,删除文件方式删除topic,这种情况下,所有的数据和配置信息都会丢失。
要删除的包括namesrv的数据文件和broker的数据文件;

删除namesrv的数据文件

一般默认在/root/store和/root/logs下

删除broker的数据文件

一般在rocketmq安装目录下的store目录

文章目录
  1. 1. 删除指定的topic
  2. 2. 删除不了指定的topic
    1. 2.1. 删除namesrv的数据文件
    2. 2.2. 删除broker的数据文件