我已经在链接上配置了我的Hive:http://www.youtube.com/watch?v = Dqo1ahdBK_A,但是在Hive中创建表时出现以下错误.我使用hadoop-1.2.1和hive-0.12.0.
hive> create table employee(emp_id int,name string,salary double); FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.metastore.HiveMetaStoreClient
SachinJ.. 44
您的Metastore看起来有问题.如果您使用默认的hive Metastore嵌入式德比.如果退出异常,锁定文件将存在.如果你删除该锁定文件,这个问题将得到解决
rm metastore_db/*.lck
Ashex.. 9
这可能是像描述sachinjose的Metastore或连接问题的问题.以调试模式运行配置单元控制台,如下所示:
hive -hiveconf hive.root.logger=DEBUG,console
然后执行一个简单的查询show tables;
,看看会发生什么.我在重新启动namenode后遇到了这个问题,这是由于配置文件中设置了错误的主机(ec2在重新启动时会生成新的私有IP /主机名).
您的Metastore看起来有问题.如果您使用默认的hive Metastore嵌入式德比.如果退出异常,锁定文件将存在.如果你删除该锁定文件,这个问题将得到解决
rm metastore_db/*.lck
这可能是像描述sachinjose的Metastore或连接问题的问题.以调试模式运行配置单元控制台,如下所示:
hive -hiveconf hive.root.logger=DEBUG,console
然后执行一个简单的查询show tables;
,看看会发生什么.我在重新启动namenode后遇到了这个问题,这是由于配置文件中设置了错误的主机(ec2在重新启动时会生成新的私有IP /主机名).
从控制台运行此命令:
./hive -hiveconf hive.root.logger=DEBUG,console
现在跑
show databases;
如果您看到如下异常:
java.sql.SQLException: A read-only user or a user in a read-only database is not permitted to disable read-only mode on a connection.
这意味着metastore_db存在一些权限问题.您需要更改完整文件夹的权限.我正在运行我的hive作为hdfs用户.所以,我使用了命令
chown -R hdfs:hadoop *
在hive目录中.这解决了这个问题.