Hive初始化元数据常见报错

目录

         Hive元数据相关配置

一、hive的配置

二、mysql数据库配置

三、使用schematool 初始化hive的元数据

四、检查数据库

         hive初始化元数据常见的报错


                                  Hive元数据相关配置


一、hive的配置

下面是Hive元存储”的存储位置为MySQL数据库,必要的配置。包括连接URL,驱动类,数据库账号以及密码


    javax.jdo.option.ConnectionURL
    jdbc:mysql://master1-1:3306/hive?characterEncoding=UTF-8
    连接的url


    javax.jdo.option.ConnectionDriverName
    com.mysql.jdbc.Driver
    连接驱动类名


    javax.jdo.option.ConnectionUserName
    ********
    连接数据库用户名


    javax.jdo.option.ConnectionPassword
    ********
    连接数据库密码

二、mysql数据库配置

1.首先我们要创建一个用于保存hive元数据的数据库

create database hive charset=utf8

2.赋予hive连接mysql用户远程的权限(这里我使用的是root账户来进行连接

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION

3.将连接mysql的驱动包放到hive的lib目录下

cp mysql-connector-java.jar ${HIVE_HOME}/lib/

三、使用schematool 初始化hive的元数据

schematool -initSchema -dbType mysql

   Hive初始化元数据常见报错_第1张图片

四、检查数据库

use hive

show tables;

我们会看到存放hive元数据的数据库已经生成了很多表,到这里,就表示你hive元数据配置和初始化成功了!

Hive初始化元数据常见报错_第2张图片


                             以下是hive初始化元数据常见的报错


错误1: 

org.apache.hadoop.hive.metastore.HiveMetaException: Failed to get schema version.

这里的排查方法是:

(1)检查hive-site.xml的数据库用户名密码有没有写错

(2)检查用于连接的用户是否有远程登陆的权限

Hive初始化元数据常见报错_第3张图片


错误2:

[ERROR] Terminal initialization failed; falling back to unsupported
java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected

Hive初始化元数据常见报错_第4张图片

对于这个错误,我们把${HADOOP_HOME}/share/hadoop/yarn/lib/jline-0.9.94.jar这个文件山除掉就可以了

rm ${HADOOP_HOME}/share/hadoop/yarn/lib/jline*.jar

这个文件删除就可以了

 

 

你可能感兴趣的:(hadoop,hive)