我在 hive 数据库中收到以下错误:
Caused by: ERROR XSDB6: Another instance of Derby may have already booted the database /home/usr/metastore_db
我听说我可以通过删除锁定文件来解决它 - 这有多安全?文件夹中有db.lck
文件metastore_db
它包含一行包含一些ID字符串。
是的,您可以删除该 lck 文件。 它只是为该德比实例创建 ID。
另请注意,如果您更改本地目录然后启动 Hive ,您将看到另一个使用 lck 文件创建的metastore_db目录,但您之前的所有数据都将是您在第一个metastore_db而不是新数据上的数据
是的,您可以删除该文件。它不会影响您的蜂巢。它只是为该特定实例创建的锁。
在"metastore_db"文件夹中,将有 2 个".lck"文件。只需删除它们。 "rm -r *.lck" - 您也可以在服务器模式下启动 derby,以避免这种情况,或者 mysql 是更好的选择。
请检查主文件夹中的metastore_db
文件夹并删除dbex.lck
如果不存在,请检查derby.log
以查看提及metastore_db
位置的位置
下次执行 spark-shell 实例时将创建它