我有一个3节点群集,在运行一些配置单元查询时出现以下错误
失败:元数据出错:metaexception(message:unable to 创建数据库路径文件:/user/hive/warehouse/db\u dut.db,未能创建数据库db\u dut)失败:执行错误,从org.apache.hadoop.hive.ql.exec.ddltask返回代码1
my hive-site.xml包含以下属性
<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>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
<description>location of default database for the warehouse</description>
</property>
jdbc:derby:;databasename=/var/lib/hive/metastore/metastore\u db;create=true<在本地计算机上正确存在。
当我给出hadoop fs-ls/user/hive时,下面的输出
[root@scaj02bda01 metastore]# hadoop fs -ls /user/hive
Found 1 items
drwxrwxrwx - hive hive 0 2013-04-09 01:40 /user/hive/warehouse
[root@scaj02bda01 metastore]#
仓库的默认数据库位置在hdfs中使用all read-write-execute权限被正确地提到,但是我仍然得到相同的错误。
3条答案
按热度按时间lkaoscv71#
它表示无法打开database/var/lib/hive/metastore/metastore\ db,当您没有访问数据库的权限时,通常会出现此错误。使用下面的commond然后回复我:
1) sudo chmod-r 777/var/lib/hive/metastore/metastore\u数据库
2) chmod-ra+rwx/var/lib/hive/metastore/metastore\u数据库
3) rm/var/lib/hive/metastore/metastore\u db/*.lck
u0sqgete2#
我也有同样的问题,问题是namenode没有在hadoop中启动。转到hadoop文件并执行以下命令:
之后检查namenode是否开始使用
如果没有,我可以参考下面的答案,帮助我hadoop“permission denied(publickey,password,keyboard interactive)”警告
一旦namenode启动,问题就会消失。
uttx8gqw3#
我也面临同样的错误。由于设置了某些策略,我无法更改权限。因此,我创建了一个新的我自己的文件夹,如
/hdp/myapp/warehouse
并在中指定了路径hive-site.xml
如下所示。这帮助我解决了这个问题。