1. 今天在使用hive客户端时,执行查询语句报错如下:
FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException:
java.lang.RuntimeException: Unable to instantiate
org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
2. 原因分析:服务端未开启服务,在hive服务端使用命令:hive --service metastore &
再在客户端使用hive命令连接 (注意:客户端与服务端一般不在同一节点)
3. 网上其他解决方案:hive的数据库MySQL在安装的时候没有初始化
解决方案:初始化数据库,命令:schematool -dbType mysql -initSchema
初始化时又遇到下面的错误
Error: Duplicate key name 'PCS_STATS_IDX' (state=42000,code=1061)
org.apache.hadoop.hive.metastore.HiveMetaException: Schema initialization FAILED!
Metastore state would be inconsistent !!
Underlying cause: java.io.IOException : Schema script failed, errorcode 2
Use --verbose for detailed st
3. 原因分析:初始化的时候就会创建数据库hive,第一次初始化就已经生成,如果后面继续初始化还会继续执行这一步,但是执行到这时不能创建名字相同的数据库,就会报错以上错误信息,解决办法就是打开我们的mysql数据库,将这个hive数据库删除,继续初始化就可以成功了。
(1) 查看库名:show databases;
(2) 删除数据库:drop database hive;
(3) 重新执行初始化命令:schematool -dbType mysql -initSchema
即可成功
4. 检查:在hive的lib下加入适合自己节点的mysql驱动
5. 在hive服务端使用命令:hive --service metastore &
,客户端中使用hive连接,即可正常使用hive
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/13717.html