hive启动后运行命令时出现:
FAILED: Error in metadata: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask
这种情况一般原因比较多,所以需要进行hive调试:
进入hive的bin目录输入:hive --hiveconf hive.root.logger=debug,console;
进去的原因有多种,但一般常见的有两种,
1 没有将jdbc驱动包导入到hive的lib目录
解决方案:
下载mysql jdbc驱动包导入到hive的lib目录中 http://www.mysql.com/downloads/connector/j/5.1.html
2 mysql中保存hive元数据的数据库没有赋予足够权限
解决方案:
赋予hive数据库足够权限,方式有3中如下:
1.用root 进入mysql后 mysql>set password =password('你的密码'); mysql>flush privileges; 2.使用GRANT语句 mysql>grant all on *.* to 'root'@'localhost' IDENTIFIED BY '你的密码'with grant option ; mysql>flush privileges; 3.进入mysql库修改user表 mysql>use mysql; mysql>update user set password=password('你的密码') where user='root'; mysql>flush privileges;