更新时间:2024-03-21 GMT+08:00

数据恢复

HDFS文件属性恢复

根据导出的权限信息在目的集群的后台使用HDFS命令对文件的权限及属主/组信息进行恢复。

$HADOOP_HOME/bin/hdfs dfs -chmod <MODE> <path>
$HADOOP_HOME/bin/hdfs dfs -chown <OWNER> <path>

Hive元数据恢复

在目的集群中安装并使用Sqoop命令将导出的Hive元数据导入MRS集群DBService。

$Sqoop_Home/bin/sqoop export --connect jdbc:postgresql://<ip>:20051/hivemeta --table <table_name> --username hive -password <passwd> --export-dir <export_from>

其中,各参数的含义如下:

  • $Sqoop_Home:目的集群上Sqoop的安装目录。
  • <ip>:目的集群上数据库的IP地址。
  • <table_name>:待恢复的表名称。
  • <passwd>:hive用户的密码。
  • <export_from>:元数据在目的集群的HDFS地址。

命令中如果携带认证密码信息可能存在安全风险,在执行命令前建议关闭系统的history命令记录功能,避免信息泄露。

HBase表重建

重启目的集群的HBase服务,使数据迁移生效。在启动过程中,HBase会加载当前HDFS上的数据并重新生成元数据。启动完成后,在Master节点客户端执行如下命令加载HBase表数据。

$HBase_Home/bin/hbase hbck -fixMeta -fixAssignments

命令执行完成后,重复执行如下命令查看HBase集群健康状态直至正常。

hbase hbck