hdfs的namenode元数据是存储在硬盘上的,但是断电可能会造成元数据丢失,发生数据丢失以后,可以采取以下方法对数据进行恢复。
- 先format namenode:
hadoop namenode –format
- 然后把SNameNode上的${SecondaryNameNode Checkpoint directories}路径下所有文件远程拷贝到NameNode的${NameNode directories}下,
scp –r snamenode:/hadoop/hadoop/hdfs/namesecondary/* namenode:/hadoop/hadoop/hdfs/namenode
- 然后重启NameNode即可。