ck数据盘损坏,无法进行数据恢复,万幸存储的数据非生产不可丢失数据,进行重新部署。
    主要步骤:
    清理ck数据目录,
    把zk里/clickhouse删掉,
    启动ck
    但zk集群同时被kafka正在使用,对zk的操作不能影响到kafka的正常工作
    image.png
    $zkpath/bin/.zkCli.sh连接到zk集群
    执行删除命令rmr /clickhouse
    报错:Packet lenxxxx is out of range!
    服务端修改zoo.cfg
    jute.maxbuffer=3e7fffff
    重启zk
    客户端修改zkCli.sh添加

    1. "-Djute.maxbuffer=1048575999"

    批量删除

    1. for i in `cat list`;do ./zkCli.sh -server 127.0.0.1:2181 rmr /path/to/table/$i;done

    文件太多仍无法删除
    统计文件内容到指定文件,使用sed/awk切割文件,批量清理
    例如使用,为分隔符的一行大文件,sed切割成列,逐一删除

    1. sed -i 's/,/\n/g' list

    image.png
    再去掉行首空格

    1. sed -i 's/\ //g' list

    9faodb018858758dfdc25762c432d6356835
    aadgdd15a2210c06ce56oe967
    75b192874ac5atb228fc8fafccb48219142008
    [rooteiocalhostse
    n#sed-i’s/gtn
    [rootolocaihost~more
    [ce7fb6308001dq1odd2c382d71393e12949
    2d31b47cdda2ea0231ci5bebbo1343343
    62510agfad68ac1307d65d762444aa6725652565
    92d9df468891218442261de834bbd77
    1110502289abe429052215do8baee_214214

    1. ![image.png](https://cdn.nlark.com/yuque/0/2020/png/175887/1578224593380-6811cb2e-724a-41a8-a344-500bd5fd9ed9.png "image.png")

    逐一删除

    1. for i in `sed -n '1,10000p' list`;do ./zkCli.sh -server 127.0.0.1:2181 rmr /path/to/$i;done

    https://www.howardliu.cn/zookeeper/zookeeper-error-packet-lenX-is-out-of-range/
    删除操作异常缓慢,基本一个库需要10分钟才能有返回,不知道zk删除逻辑是什么。。。

    ck恢复数据