一般情况下,是不会删除数据的。到达一定时间后,kafka会自动删除。如果一定要删除可以删除topic在重建topic了

No. 1:

如果需要被删除topic 此时正在被程序 produce和consume,则这些生产和消费程序需要停止。

因为如果有程序正在生产或者消费该topic,则该topic的offset信息一致会在broker更新。调用kafka delete命令则无法删除该topic。

同时,需要设置 auto.create.topics.enable = false,默认设置为true。如果设置为true,则produce或者fetch 不存在的topic也会自动创建这个topic。这样会给删除topic带来很多意向不到的问题。

所以,这一步很重要,必须设置auto.create.topics.enable = false,并认真把生产和消费程序彻底全部停止。

No. 2:

server.properties 设置 delete.topic.enable=true

如果没有设置 delete.topic.enable=true,则调用kafka 的delete命令无法真正将topic删除,而是显示(marked for deletion)

No. 3:

调用命令删除topic:

./bin/kafka-topics --delete --zookeeper 【zookeeper server:port】 --topic 【topic name】

No. 4:

删除kafka存储目录(server.properties文件log.dirs配置,默认为"/data/kafka-logs")相关topic的数据目录。

注意:如果kafka 有多个 broker,且每个broker 配置了多个数据盘(比如 /data/kafka-logs,/data1/kafka-logs …),且topic也有多个分区和replica,则需要对所有broker的所有数据盘进行扫描,删除该topic的所有分区数据。

一般而言,经过上面4步就可以正常删除掉topic和topic的数据。但是,如果经过上面四步,还是无法正常删除topic,则需要对kafka在zookeeer的存储信息进行删除。具体操作如下:

(注意:以下步骤里面,kafka在zk里面的节点信息是采用默认值,如果你的系统修改过kafka在zk里面的节点信息,则需要根据系统的实际情况找到准确位置进行操作)

No. 5:

登陆到zk服务器,使用命令:

bin/zkCli.sh -server 【zookeeper server:port】

登录到zk shell后,然后找到topic所在的目录:ls /brokers/topics,找到要删除的topic,然后执行命令:

rmr /brokers/topics/【topic name】

即可,此时topic被彻底删除。

如果topic 是被标记为 marked for deletion,则通过命令 ls /admin/delete_topics,找到要删除的topic,然后执行命令:

rmr /admin/delete_topics/【topic name】

备注:

网络上很多其它文章还说明,需要删除topic在zk上面的消费节点记录、配置节点记录,比如:

rmr /consumers/【consumer-group】

rmr /config/topics/【topic name】

其实正常情况是不需要进行这两个操作的,如果需要,那都是由于操作不当导致的。比如step1停止生产和消费程序没有做,step2没有正确配置。也就是说,正常情况下严格按照step1 – step5 的步骤,是一定能够正常删除topic的。

No. 6:

完成之后,调用命令:

./bin/kafka-topics.sh --list --zookeeper 【zookeeper server:port】

查看现在kafka的topic信息。正常情况下删除的topic就不会再显示。

但是,如果还能够查询到删除的topic,则重启zk和kafka即可。

创建topic

bin/kafka-topics.sh --create --zookeeper 【zookeeper server:port】 --replication-factor 3 --partitions 3 --topic 【topic name】

–replication-factor 2 #3个副本

–partitions 1 #3个分区

–topic #主题名为shuaige

kafka删除topic清空数据的更多相关文章

  1. kafka 删除topic清空数据

    原 kafka 删除topic清空数据 2018年11月20日 18:17:50 Ming! 阅读数:1391   版权声明:版权声明:本文为博主原创文章,未经博主允许不得转载. https://bl ...

  2. kafka删除topic数据

    一.概述 生产环境中,有一个topic的数据量非常大.这些数据不是非常重要,需要定期清理. 要求:默认保持24小时,某些topic 需要保留2小时或者6小时 二.清除方式 主要有3个: 1. 基于时间 ...

  3. kafka删除topic及其相关数据

    1.删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录 2.Kafka 删除topic ...

  4. kafka删除topic的方法及我在kafka上边的一些经验

    我在本地做kafka的producer调试,每隔一段时间后,所使用的topic管道就会堆积数据,而且我这边使用的是  kafka   bin 下的consumer命令单独消费的,每次都是  --fro ...

  5. Kafka如何彻底删除topic及数据

    前言:删除kafka topic及其数据,严格来说并不是很难的操作.但是,往往给kafka 使用者带来诸多问题.项目组之前接触过多个开发者,发现都会偶然出现无法彻底删除kafka的情况.本文总结多个删 ...

  6. kafka删除topic详解

    1.删除topic命令 bin/kafka-topics.sh --delete --zookeeper 192.168.242.131:2181 --topic aaa 注:此命令如果要生效,还需在 ...

  7. kafka 删除topic

    两种方法: 一.修改配置文件server.properties 添加如下配置: delete.topic.enable=true 说明:官方给的文档说明“Enables delete topic. D ...

  8. kafka删除topic中的数据,适用于比较高的版本

    server.properties中增加选项 delete.topic.enable=true 修改之后重启kafka 进入kafka目录,输入命令 bin/kafka-topics.sh --zoo ...

  9. kafka删除topic

    手动: 删除kafka存储目录(server.properties文件log.dirs配置,默认为"/tmp/kafka-logs")相关topic目录 删除zookeeper & ...

  10. kafka删除topic后再创建同名的topic报错(ERROR org.apache.kafka.common.errors.TopicExistsException)

    [hadoop@datanode3 logs]$ kafka-topics.sh --delete --zookeeper datanode1:2181 --topic firstTopic firs ...

随机推荐

  1. 重新思考 Vue 组件的定义

    重新总结组件的定义 这是官方对组件的定义:组件允许我们将 UI 划分为独立的.可重用的部分,并且可以对每个部分进行单独的思考.在实际应用中,组件常常被组织成层层嵌套的树状结构. 对于 Vue 开发经验 ...

  2. 1.2.HBuilder软件与uniapp文件介绍

    uni-app官网地址 下载HBuilder 教程

  3. redis未授权访问漏洞——简单记录

    从0复现redis未授权访问漏洞 环境:centos8(ip:10.0.0.3) 安装 redis 工具:kali(10.1.1.136) 1. 介绍 Redis REmote DIctionary ...

  4. appium连接手机 adb调试 app自动化

    一. 工具准备 jdk,java环境必备. android sdk,要使用内置的Android debug bridge,简称adb,调试手机用. appium,提供自动化服务,app自动化的核心库. ...

  5. Linux 下安装Nginx两种方法- yum安装 and Centos7下yum安装配置nginx与php

    转载csdn: Linux 下安装Nginx两种方法- yum安装_在电脑前深思的博客-CSDN博客 Linux安装Nginx(两种方式)_HHRunning的博客-CSDN博客_linux 是否安装 ...

  6. 在wifi的5G频率下无法加载图片解决方法

    开始是这样的:因为我家wifi支持300兆的网速,所以换了一个荣耀的路由器,换了一根网线,但是发现5G频率有的应用加载不了图片,所以查了很多资料想了很多办法,终于解决了, 解决方法如下: 1.这是DH ...

  7. TNF诱导的关节破坏由IL-1介导

    TNF诱导的关节破坏由IL-1介导Zwerina J, et al. PNAS.2007;104:11742-7.TNF拮抗剂有效抑制人类类风湿关节炎(RA)的炎症和结构破坏.然而截至目前还不清楚TN ...

  8. 基于C++的OpenGL 05 之坐标系统

    1. 引言 本文基于C++语言,描述OpenGL的坐标系统 前置知识可参考: 基于C++的OpenGL 04 之变换 - 当时明月在曾照彩云归 - 博客园 (cnblogs.com) 笔者这里不过多描 ...

  9. 【Java-01-2】java基础-基本语法(2)(关系运算,if,循环)

    1.关系/逻辑/条件 运算符,if语句 /* * 关系运算,if,循环 * 条件:condition * 注意逻辑运算符的短路特性 */ import java.io.*; public class ...

  10. Linux操作命令(四) 1.which命令 2.whereis命令 3.locate命令

    1.which命令 which 命令的作用是,在 PATH 变量指定的路径中搜索可执行文件的所在位置.它一般用来确认系统中是否安装了指定的软件 确认是否安装了 gcc:which gcc 查看 cd ...