配置单元数据库不存在semanticexception 10072

wbgh16ku  于 2021-06-02  发布在  Hadoop
关注(0)|答案(4)|浏览(431)

我已经使用命令在配置单元中创建了一个数据库 CREATE DATABASE FIRST_DB; 然后创建一个数据库。
然后我在其中创建了几个表,它就可以工作了。名为first_db.db的目录是在我的hdfs仓库位置创建的。然后我离开我的Hive。
第二天,当我启动我的Hive,并试图连接使用命令 USE FIRST_DB; 然后它给出了一个错误:
semanticexception[错误10072]:数据库不存在
但是当我签入我的hdfs时,第一个\u db.db出现了,下面的表也出现了。请帮助我在退出配置单元会话后永久设置此数据库。如果我错过了任何配置,请告诉我。

6jygbczu

6jygbczu1#

这就解决了问题--

sudo ln -s /etc/hive/conf.dist/hive-site.xml  /etc/spark/conf.dist/hive-site.xml

我退出了sparkshell并重新启动它,我能够使用sparkshell查看Hive数据库。

1sbrub3j

1sbrub3j2#

@斯泰西谢谢你的帮助。我解决了这个问题,创建了一个同名的新数据库,即first \u db,紧接着使用 SHOW TABLES 命令,所以我重新启动了我的hive、hadoop和ubuntu机器。重新启动后,它能够连接到我的旧数据库并引用旧表数据。

y0u0uwnf

y0u0uwnf3#

你能检查一下你的房间吗 hive.metastore.uris 变量。可能是配置单元会话正在使用您的derby元存储,默认情况下,它是在本地目录中创建的,而不是使用共享元存储。
看起来问题出在您的配置(配置单元元存储)上。你能检查一下变量是否设置为 "embedded" or "Remote Metastore" . embedded是默认值,所以尝试将其更改为“remote metastore”。

v7pvogib

v7pvogib4#

确保hive-site.conf在spark config目录中。我使用hive命令行进行了检查,一切正常,但sparkshell中的sqlcontext也出现了同样的问题。原来spark config文件夹中没有hive-site.conf。
必须创建一个符号链接,请注意,文件夹的位置可能在您的情况不同。

sudo ln -s /etc/hive/conf.dist/hive-site.xml  /etc/spark/conf.dist/hive-site.xml

这里的链接对我很有帮助https://community.cloudera.com/t5/advanced-analytics-apache-spark/how-to-access-the-hive-tables-from-spark-shell/td-p/36609

相关问题