Hive(四)之元数据的备份与还原

Hive的MapReduce任务

在Hive(三)中的查询表的时候,查询全部信息直接出结果,查询表中的name属性则是执行的MR程序。但是我们任务查询单列信息,没有必要执行MR程序,这样太慢了,所以我们要对配置文件进行修改

<property>
   <name>hive.fetch.task.conversion</name>
  <value>more</value>
</property>

Hive的元数据库的备份与还原

常见错误:启动Hive时,无法初始化metastore数据库,无法创建连接,无法创建会话。

可能性分析:(hive必须要依赖metastore)

  1. hive的metastore数据库丢失了,比如drop、文件损坏等
  2. metasotre版本号不对:
    比如:现在有两个一摸一样的集群,第一个集群中hive操作了一些数据,此操作完成之后,metastore中肯定会发生变化,这时候将这个metastore完全复制到第二个集群中。当第二个集群的hive去连接这个metastore数据库的时候,可能会有版本号对不上的问题。hive操作metastore的时候,会有个版本号记录,如果版本号对不上,就认为hive想找的metastore版本丢失了。
  3. 远程表服务:


    远程表服务出错

备份的基本语法:

$ mysqldump -uroot -p metastore > metastore.sql
metastore数据库备份

还原的基本语法:

$ mysql -uroot -p metastore < metastore.sql

复习:find命令,查找metastore.sql默认存放位置

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容