码迷,mamicode.com
首页 > 其他好文 > 详细

es数据恢复杂记

时间:2017-04-10 23:35:37      阅读:550      评论:0      收藏:0      [点我收藏+]

标签:复制   recovery   3.1   ice   安装   格式   自身   重建   Lucene   

  kill -9或者断电等原因异常,es在重启后,会通过translog来进行数据恢复。

  默认的恢复速度是较慢的,可以设置indices.recovery.current_streams:10增大恢复的线程数,还可以设置indices.recovery的其他参数加快恢复的速度。

 

     但是某些情况下,如lucene文件格式错误等,重启es后无法通过自身恢复,可以考虑如下的方式。

     1.主分片是正常的,副本分片有错误,且无法通过复制机制恢复。可以考虑删除有问题的分片,集群会通过复制的方式恢复。

     2.主分片和副本分片都有错误,备份数据后,可以使用尝试恢复lucene文件。这种方式会删除有问题的段,当段很大时,会丢失很多的文件。

        java -cp /opt/software/elasticsearch/lib/lucene-core-5.3.1.jar -ea:org.apache.lucene... org.apache.lucene.index.CheckIndex /esdata/estest/0/test/0/index -exorcise

        可以使用上面的命令尝试修复,但是一定要先备份数据。

        java -cp /opt/software/elasticsearch/lib/lucene-core-5.3.1.jar -ea:org.apache.lucene... org.apache.lucene.index.CheckIndex,回车后会提示使用的方法。

        参数/opt/software/elasticsearch/lib/lucene-core-5.3.1.jar是es安装目录lib目录,/esdata/estest/0/test/0/index是有问题的分片所对应的文件目录。

   

         不要删除分片文件夹下的segments_N文件,lucene5.x下该文件不会再重建。删除该文件后使用CheckIndex 也无法恢复。

         

es数据恢复杂记

标签:复制   recovery   3.1   ice   安装   格式   自身   重建   Lucene   

原文地址:http://www.cnblogs.com/lnlvinso/p/6691275.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!