- FAILED: SemanticException org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
- 错误原因以及解决方法
hive自带的内存数据库derby应当先进行初始化。
$ cd hive_pat # 进入hive目录
$ mv metastore_db metastore_db.tmp # 将metastore_db 重命名metastore_db.tmp
$ bin/schematool -initSchema -dbType derby #
进行初始化
2 Underlying cause: com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException : Unknown database ‘hive;create=true’
- 错误原因及解决方案
# hive-site配置正确的情况下考虑未创建数据库,先创建数据库
# <name>javax.jdo.option.ConnectionURL</name>
myql> create database hive;
# 若已经创建数据库,修改hive-site
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://127.0.0.1:3306/hive?createDatabaseIfnotExist=true;</value>
- failed to load driver
# 若使用,下载mysql驱动解压, 将二进制文件放入hive lib目录
https://dev.mysql.com/downloads/connector/j/5.1.html
3. schematool -dbType mysql -initSchema错误
schematool -dbType mysql -initSchema
org.apache.hadoop.hive.metastore.HiveMetaException: Failed to get schema version.
- 解决方案
# mysql 配置权限
$ GRANT ALL ON *.* to 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
$ mysql restart