hadoop的namenode无法启动只能通过格式化解决?

问题报错

        问题忘记记录了,口头描述一下吧,事情是这样的,今天启动hadoop集群的时候,突然namenode无法启动了,之前都是可以正常启动的,我回忆了一下,应该是我最后一次不正常的操作导致的后果,hadoop集群启动的时候,直接关闭了虚拟机,因此上网查找解决办法,但是大多数都是要格式化才能解决,这样的话,数据就全部丢失了。

如何解决

        既然问题已经找到了,最后一次的启动造成的,那么我们可以回退hadoop的版本,回到更早之前的版本,这样的话,丢失的数据就不会太多

解决办法

1、利用SecondaryName中的备份数据,配置路径可以查看自己的配置文件

<!--SecondaryName备份NameNode中的edits文件的路径-->
        <property>
                <name>dfs.namenode.checkpoint.edits.dir</name>
                <value>file:///export/servers/hadoop-3.1.2/datas/dfs/SecondryNameNode/edits</value>
        </property>
        <!--SecondaryNameNode用来备份checkpoint image文件的路径 -->
        <property>
                <name>dfs.namenode.checkpoint.dir</name>
                <value>file:///export/servers/hadoop-3.1.2/datas/dfs/SecondryNameNode/name</value>
        </property>

2、将namenode中的edit和image的文件全部删除,路径查看自己的配置文件

<!--NameNode存储数据的路径-->
        <property>
                <name>dfs.namenode.name.dir</name>
                <value>file:///export/servers/hadoop-3.1.2/datas/namenode/namenodedatas</value>
        </property>
<!--NameNode中的edits的操作记录存储路径,这个很重要,要是丢失了,集群无法启动-->
        <property>
                <name>dfs.namenode.edits.dir</name>
                <value>file:///export/servers/hadoop-3.1.2/datas/dfs/NameNode/edits</value>
        </property>

3、注意:以上的文件都是在current目录下的,仔细找找,别删错了,然后将SecondaryName的中的文件备份到复制到namenode,记得只复制到没有问题的版本就行

4、最后关闭hadoop,启动hadoop即可

stop-dfs.sh
start-dfs.sh
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值