kafka全部資料清空與某一topic資料清空

2022-02-02 11:24:58 字數 2120 閱讀 3715

kafka全部資料清空的步驟為:

停止每台機器上的kafka;

刪除kafka儲存目錄(server.properties檔案log.dirs配置,預設為「/tmp/kafka-logs」)全部topic的資料目錄;

刪除zookeeper上與kafka相關的znode節點;

重啟kafka、如果刪除topic還在則需要重啟zookeeper;

這裡以192.168.187.201 node1、192.168.187.202 node2、192.168.187.203 node3三颱機器作為kafka的集群。

注意:kafka版本為kafka_2.11-1.1.1

以root使用者分別登入三颱機器,使用命令jps 找出kafka的pid,再使用命令kill kafka程序。

節點node1

節點node2

節點node3

在kafka安裝目錄的config資料夾下server.properties中檢視儲存目錄為:

刪除該目錄所有資料:

進入zookeeper的shell介面:

在上面的znode節點中,除了zookeeper作為zk的安全保障措施,其他znode節點都得刪除 

分別在node1、node2、node3上面執行如下命令啟動kafka:

jps命令檢視node1、node2、node3上面的啟動情況:

最後在檢視kafka上面是否還有topic存在:

可以看到topic及其相關資料已被清空刪除

檢視當前所有topic

比如目前需要刪除test這一topic,目前kafka_2.11-1.1.1以上版本預設delete.topic.enable=true,即是說使用命令

./kafka-topics.sh --zookeeper node1:2181 --delete --topic test

該命令將會在zookeeper中刪除與test這一topic相關的znode節點(包括test詳細資訊、生產資料、消費資料的節點),並在kafka的儲存目錄/opt/data/kafka/kafka-logs/下把與test這一topic相關的儲存資料目錄標記為待刪除,稍後會真正刪除這些待刪除的目錄,如下:

使用kafka-topics.sh檢視test在zookeeper中相關znode節點資訊是否已被刪除

在/opt/data/kafka/kafka-logs目錄下檢視test相關儲存目錄是否被標記刪除

在/opt/data/kafka/kafka-logs目錄下檢視test相關儲存目錄已被刪除

kafka全部資料清空步驟比較繁瑣,借鑑某一topic資料清空的方式,可以通過使用kafka-topics.sh --delete命令逐個刪除所有的topic,達到清空kafka全部topic資料的目的,不足的是topic「__consumer_offsets」無法刪除,不過不礙事。

kafka全部資料清空與某一topic資料清空

kafka全部資料清空的步驟為 停止每台機器上的kafka 刪除kafka儲存目錄 server.properties檔案log.dirs配置,預設為 tmp kafka logs 全部topic的資料目錄 刪除zookeeper上與kafka相關的znode節點 重啟kafka 如果刪除topic...

kafka清空全部資料

首先,先關閉三颱機器上的kafka kafka集群搭建 注.kafka版本為kafka 2.11 0.11.0.0 其次,刪除kafka儲存目錄的topic資料內容 conf server.properties中的log.dirs配置的路徑,預設為 tmp kafka logs 接著,刪除zooke...

sql 給表某一列的全部資料追加相同的資料

testsql 表 age 列名 column limit 1 追加的資料 ps oracle中 1 給testsql表的所有記錄的age欄位裡面追加 limit 1內容 update testsql set age concat age,limit 1 2 將剛才追加內容刪除 update tes...