首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法实例化org.apache.hadoop.hive.metastore.HiveMetaStoreClient

无法实例化org.apache.hadoop.hive.metastore.HiveMetaStoreClient
EN

Stack Overflow用户
提问于 2014-01-03 02:19:05
回答 4查看 12.9K关注 0票数 4

我刚刚安装了hive和mysql。并将mysqlconnector复制到hive_home/lib文件夹

但是,当我在hive>提示符中尝试show databases和create table命令时,得到如下错误:

代码语言:javascript
复制
create database saty;
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_site.xml是

代码语言:javascript
复制
<property>    
  <name>javax.jdo.option.ConnectionURL</name>         
  <value>jdbc:mysql://localhost:3306/hadoop?CreateDatabaseIfNotExist=true</value>         
  <description>JDBC connect string for a JDBC metastore</description>
</property>

<property>
  <name>javax.jdo.option.ConnectionDriverName</name>
  <value>com.mysql.jdbc.Driver</value>
  <description>Driver class name for a JDBC metastore</description>
</property>

<property>
  <name>hive.metastore.warehouse.dir</name>
  <value>/user/hive/warehouse</value>
  <description>location of default database for the warehouse</description>
</property>

而且我的文件系统中没有名为/user/hive/warehouse的目录。

我使用mkdir命令创建了这些路径。并在重启后重试..关于仍然得到错误..

你好,萨蒂亚

EN

回答 4

Stack Overflow用户

发布于 2014-01-03 21:25:59

尝试指定这两个属性

代码语言:javascript
复制
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>username</value>
<description>Username to use against metastore database</description>
</property>

<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>password</value>
<description>Password to use against metastore database</description>
</property>

类似地,mysql登录的用户名应该具有访问JDBC连接字符串中指定的数据库的权限。这可以使用以下命令来实现

代码语言:javascript
复制
GRANT ALL ON Databasename.* TO username@'%' IDENTIFIED BY 'password';
票数 2
EN

Stack Overflow用户

发布于 2014-07-22 21:39:00

答案位于http://www.cloudera.com/content/cloudera-content/cloudera-docs/CDH5/5.0/CDH5-Installation-Guide/cdh5ig_hive_schema_tool.html

要取消模式检查并允许元存储隐式修改模式,需要在hive-site.xml中将hive.metastore.schema.verification配置属性设置为false。

票数 1
EN

Stack Overflow用户

发布于 2014-03-18 18:30:48

我也遇到过类似的问题,在我的例子中,原因是selinux导致Postgres无法正常运行。

我在/etc/rc3.d/S64postgresql的第一行插入了以下行-

echo 0> / selinux /enforce #临时禁用selinux

并重新启动了带有hive转移节点的节点。

所以通常你可以检查两件事:

  1. 检查元存储区的数据库是否正在运行,属性中的用户/密码是否正确
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20889204

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档