namenode出现故障数据恢复方式-10

第一种

模拟namenode出现故障情况

先启动集群,然后杀死namenode

删除namenode数据

访问客户端已经不行了

数据恢复

把secendarynamenode里的数据复制到namenode节点下

然后启动namenode节点

刚访问时会发现处于安全模式

稍微等一会儿等安全模式关闭再访问就好了

第二种

0)修改hdfs-site.xml中的,修改完后,分发到其它节点

<property>

  <name>dfs.namenode.checkpoint.period</name>

  <value>120</value>

</property>

 

<property>

  <name>dfs.namenode.name.dir</name>

  <value>/opt/module/hadoop-2.7.2/data/tmp/dfs/name</value>

</property>

模拟namenode出现故障情况

1kill -9 namenode进程

2)删除namenode存储的数据(/opt/module/hadoop-2.7.2/data/tmp/dfs/name

rm -rf /opt/module/hadoop-2.7.2/data/tmp/dfs/name/*

数据恢复

3)如果SecondaryNameNode不和Namenode在一个主机节点上,需要将SecondaryNameNode存储数据的目录拷贝到Namenode存储数据的平级目录。

[atguigu@hadoop102 dfs]$ pwd

/opt/module/hadoop-2.7.2/data/tmp/dfs

[atguigu@hadoop102 dfs]$ ls

data  name  namesecondary

4)导入检查点数据,这个命令会自动启动namenode节点,只不执行过程非常漫长.在namenode节点上执行这句话.

bin/hdfs namenode -importCheckpoint

(5)如果执行上面命令提示文件锁了,可以删除in_use.lock

  rm -rf /opt/module/hadoop-2.7.2/data/tmp/dfs/namesecondary/in_use.lock

总结:这两种方式只能恢复namenode好之前secondarynamenode帮助namenode已经完成了的数据,namenode自己正在执行的那些数据肯定是已经丢失的.原因看

NameNode和Secondary NameNode工作机制-09

https://blog.csdn.net/kxj19980524/article/details/89102353

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值