Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否在配置单元中创建表异常?_Java_Apache_Hadoop_Hive_Apache Zookeeper - Fatal编程技术网

Java 是否在配置单元中创建表异常?

Java 是否在配置单元中创建表异常?,java,apache,hadoop,hive,apache-zookeeper,Java,Apache,Hadoop,Hive,Apache Zookeeper,我已经安装了配置单元,但当我编写创建表的命令“createtablefoo(idint,msgsstring);”时。我抛出异常“清理操作已完成 失败:元数据错误:javax.jdo.JDOFatalDataStoreException:未能创建数据库“metastore_db”,有关详细信息,请参阅下一个异常。NestedThrowables:java.sql.SQLException:未能创建数据库“metastore_db”,有关详细信息,请参阅下一个异常。失败:执行错误,从org.apa

我已经安装了配置单元,但当我编写创建表的命令“createtablefoo(idint,msgsstring);”时。我抛出异常“清理操作已完成
失败:元数据错误:javax.jdo.JDOFatalDataStoreException:未能创建数据库“metastore_db”,有关详细信息,请参阅下一个异常。NestedThrowables:java.sql.SQLException:未能创建数据库“metastore_db”,有关详细信息,请参阅下一个异常。失败:执行错误,从org.apache.hadoop.hive.ql.exec.ddlstask返回代码1”。发生此异常的原因可能是配置问题或其他问题

我也有同样的问题:

voicestreams@voicestreams:~/testbed/eclipseprojects/workspace/mapreducesort/java$hive

配置单元历史记录文件=/tmp/root/Hive\u job\u log\u root\u 201210282200\u 1123208966.txt

配置单元>显示表格

失败:元数据中出错:javax.jdo.JDOFatalDataStoreException:未能创建数据库'/var/lib/hive/metastore/metastore_db',有关详细信息,请参阅下一个异常。 嵌套的工作流表: java.sql.SQLException:未能创建数据库'/var/lib/hive/metastore/metastore_db',有关详细信息,请参阅下一个异常。 失败:执行错误,从org.apache.hadoop.hive.ql.exec.ddlstask返回代码1

我已经使用apt-get-install-hadoop-Hive安装了Hive。 在我将metastore从/var/lib/hive/移动之后,它就工作了。我通过编辑做到了这一点: /etc/hive/conf.dist/hive site.xml

发件人:


javax.jdo.option.ConnectionURL
jdbc:derby:;databaseName=/var/lib/hive/metastore/metastore\u db;create=true
JDBC元存储的JDBC连接字符串
致:


javax.jdo.option.ConnectionURL
jdbc:derby:;databaseName=/home/voicestreams/hive/metastore/metastore\u db;create=true
JDBC元存储的JDBC连接字符串
`


基本上,我将databaseName=更改为一个可写目录(/home/voicestreams/hive/),并且工作正常。当然,在再次运行hive之前,我必须创建/home/voicestreams/hive/。希望这能有所帮助。

我认为这意味着您的安装有问题。您以前使用过hadoop而没有出现异常吗?请确保在尝试hive之前hadoop正在工作,并且用户也拥有hadoop的权限。不,我以前没有使用过。我第一次使用它。是的,hadoop正在工作。当你说hadoop正在工作时,这意味着你可以将文件复制到HDFS并运行mapred?你能运行“hadoop fs-ls/”吗。如果是这样,那就意味着Hadoop已经启动并运行了。您的嵌入式derby元存储似乎有问题。您能确保这是当时运行的唯一配置单元客户端吗?另外,您使用的是什么版本的Hadoop和Hive?我建议使用mysql元存储而不是默认提供的derby。
<property>
  <name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:derby:;databaseName=/var/lib/hive/metastore/metastore_db;create=true</value>
  <description>JDBC connect string for a JDBC metastore</description>
</property>
<property>  
<name>javax.jdo.option.ConnectionURL</name>
  <value>jdbc:derby:;databaseName=/home/voicestreams/hive/metastore/metastore_db;create=true</value>
  <description>JDBC connect string for a JDBC metastore</description>
</property>