zookeeper数据恢复
删除topic
kafka
未设置delete.topic.enable=true
时, 尝试删除topic
会显示test - marked for deletion
于是登录zookeeper
客户端(zkCli.sh
), 尝试删除topic
- 查看
topic
所在的目录:ls /brokers/topics
; - 查看
marked for deletion
标记的topic
:ls /admin/delete_topics
删除此处的topic
, 可以恢复 ls /config/topics
, 也有所有topic
的信息, 但用途不明
删除zookeeper
上对应的节点之后,kafka
上对应的topic
从列表中消失- 最后删除磁盘上的对应文件.
server.properties
中, 设置了log.dirs
. 在该目录下可以找到所有的topic
文件, 在每个kafka
节点删除的指定topic
, 就手动删除了topic
误删除zookeeper文件
删除指定topic
时, 把zookeeper
上的所有topic
都删除掉了
于是考虑数据恢复
1. 查看快照和日志
在$ZOOKEEPER_HOME/data
和$ZOOKEEPER_HOME/datalog
文件夹中, 有zookeeper
的快照和增量日志, 根据快照和增量日志, 可以将zookeeper
恢复到指定的状态
快照和日志文件都是可读的, 参考使用下述指令
# 查看Log
java -cp dist-maven/zookeeper-3.4.9.jar;lib/log4j-1.2.16.jar;lib/slf4j-log4j12-1.6.1.jar;lib/slf4j-api-1.6.1.jar org.apache.zookeeper.server.LogFormatter log.4115cad8c1
# 查看快照
java -cp dist-maven/zookeeper-3.4.9.jar;lib/log4j-1.2.16.jar;lib/slf4j-log4j12-1.6.1.jar;lib/slf4j-api-1.6.1.jar org.apache.zookeeper.server.SnapshotFormatter snapshot.4115cad8bf
实际操作中, 无法使用-cp
+;
指定多个jar
包, 于是将所需jar
包放到同一个文件夹下, 指定整个文件夹为环境变量, 假设jar包都放在lib文件夹里, 可以使用参数java -Djava.ext.dirs=lib test
2. 恢复zookeeper
状态
ls -lt
根据更改时间排序, $ZOOKEEPER_HOME/data
和$ZOOKEEPER_HOME/datalog
文件夹中, 只保留最接近异常之前的 快照和增量日志, 然后重启zk
集群即可
rename
时遇到的问题
- 计划将文件夹下的数据全部加
.bak
后缀, 只保留正确的快照 - 考虑到
mv
无法批量改名, 因此尝试使用rename
- 谷歌了
rename
批量改名的语法, 给出的解决方案是使用正则. - 尝试使用正则语法, 发现在环境中该语法是无效的
rename
有两个版本, 输入rename --help
提示call: rename from to files...
说明不支持正则语法, 提示rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]
说明支持- 最终选择使用
shell
脚本实现该功能, 如下
for f in `ls ./`
do
mv $f ${f}.bak
done
zookeeper数据恢复相关推荐
- 【Zookeeper】源码分析之持久化(三)之FileTxnSnapLog
一.前言 前面分析了FileSnap,接着继续分析FileTxnSnapLog源码,其封装了TxnLog和SnapShot,其在持久化过程中是一个帮助类. 二.FileTxnSnapLog源码分析 2 ...
- zookeeper专题:zookeeper的节点类型,数据持久化机制
文章目录 1. zookeeper的安装 2. zookeeper的节点类型 3. zookeeper命令解析 4.zookeeper的监听通知机制 5. zookeeper的常规配置 6. zook ...
- 《从Paxos到zookeeper分布式一致性原理与实践》笔记
<从Paxos到zookeeper分布式一致性原理与实践>笔记 文章目录 <从Paxos到zookeeper分布式一致性原理与实践>笔记 一.概念 二.一致性协调 2.1 2P ...
- 《从Paxos到zookeeper分布式一致性原理与实践》
<从Paxos到zookeeper分布式一致性原理与实践> 一.概念 ACID: Automaticy.consistency.isolation. Durability CAP: con ...
- ZooKeeper 源码和实践揭秘
点击上方蓝色"方志朋",选择"设为星标" 回复"666"获取独家整理的学习资料! 作者:runnerzhang,腾讯 CSIG 后台开发工程 ...
- 面试官问:ZooKeeper 一致性协议 ZAB 原理
2019独角兽企业重金招聘Python工程师标准>>> 一致性协议有很多种,比如 Paxos,Raft,2PC,3PC等等,今天我们讲一种协议,ZAB 协议,该协议应该是所有一致性协 ...
- ZooKeeper最佳指南--云平台技术栈11
导读:之前发布了云平台技术栈(ps:点击可查看),本文主要说一下其中的zookeeper! 转自:云时代架构 前言 相信大家对 ZooKeeper 应该不算陌生.但是你真的了解 ZooKeeper 是 ...
- 【Zookeeper】Zookeeper一致性协议——ZAB
Zookeeper一致性协议--ZAB ZAB协议简介 Zookeeper通过ZAB保证分布式事务的最终一致性. ZAB全称Zookeeper Atomic Broadcast(ZAB,Zookeep ...
- 【Zookeeper入门】相关概念总结
1. 前言 相信大家对 ZooKeeper 应该不算陌生.但是你真的了解 ZooKeeper 到底有啥用不?如果别人/面试官让你给他讲讲对于 ZooKeeper 的认识,你能回答到什么地步呢? 拿我自 ...
最新文章
- django中html中图片路径怎么写,django css样式,图片路径问题解决方案
- mysql知识结构图_MySql知识结构说明
- EasyRMS录播管理服务器项目实战:windows上开机自启动NodeJS服务
- python爬取百度域名注册_python爬取百度域名_python爬取百度搜索結果url匯總
- mysql 占用的解决_解决 MySQL 突然占用全部内存的问题
- 【进阶篇】Vue Devtools——vue开发调试神器
- 隐藏的iscroll元素显示后不能滚动问题
- PointNet论文笔记
- ncverilog脚本_NC-Verilog控制命令
- 新媒体素材采集工具,帮你采集新媒体素材,提高效率
- 爬虫项目十五:你了解你的QQ好友吗?教你用Python采集QQ好友数据
- ​【汇总】CV 图像分类常见的 36 个模型
- 从BlueSky.h和BlueSky.cpp到BlueSky.out的那些事儿
- DWR 一些注意的地方
- 云服务器价格比较,用哪家的比较划算?
- maxcompute-入门-环境安装
- 【linux性能优化】软中断的理解及问题定位
- el-card 组件美
- spark报错:CREATE TEMPORARY TABLE
- 27-TCP 协议(快重传与快恢复)
热门文章
- 360众筹网_360众筹平台
- Android利用SpannableStringBuilder设置TextView中部分文字的颜色...
- 知乎热榜的话题,为什么从阿里巴巴离职,大萌哥汇总了9大理由,看完我先柠檬酸了!
- bailian.openjudge 2692:假币问题
- 初中计算机实践研究计划,《初中信息技术学科学生作品有效评价的实践研究》课题研究计划...
- 2015年3月TIOBE编程语言排行榜单
- RDF 1.1 N-Triples
- duang~NBA资讯小程序
- lightdm 循环登录问题
- sRGB Color Space