关于 Hive 报 SemanticException 错误的问题

问题描述:

hive 创建表时出错

hive> create table student(sid int,sname string);
FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

在这里插入图片描述

第一种情况:配置出错

  1. 配置 hive-site.xml(本地、远程模式)


<configuration>
	<property>
		<name>javax.jdo.option.ConnectionURLname>
        
		<value>jdbc:mysql://localhost:3306/hive?useSSL=falsevalue>
	property>				

	<property>
		<name>javax.jdo.option.ConnectionDriverNamename>
		<value>com.mysql.jdbc.Drivervalue>
	property>	

	<property>
		<name>javax.jdo.option.ConnectionUserNamename>
		<value>hiveownervalue>
	property>	

	<property>
		<name>javax.jdo.option.ConnectionPasswordname>
		<value>Welcome_1value>
	property>					

configuration>
  1. 加入 com.mysql.jdbc.Driver 驱动

    将 mysql-connector-java-5.1.43-bin 包放到 /root/training/apache-hive-2.3.0-bin/lib 目录下

  2. 初始化

    schematool -dbType mysql -initSchema

第二种情况:hive未退出(本人就是属于这种情况)

如果上述的配置文件、操作步骤都没问题,这时可能是属于这种情况。

当你之前在该目录下进入hive但没退出,在另外的终端再进入hive也会报错。

可以先杀了hive的进程,再进入。

  1. 查看 jps 进程

在这里插入图片描述

  1. 将 RunJar 进程杀死

关于 Hive 报 SemanticException 错误的问题_第1张图片

  1. 成功创建表

在这里插入图片描述

你可能感兴趣的:(大数据)