java - Metastore db hive - 另一个实例已经在运行

标签 java hadoop hive

我试图在 linux 服务器上运行 hive,但我不断收到以下错误:

Caused by: ERROR XSDB6: Another instance of Derby may have already booted the database /home/usr/metastore_db

怎么了?我尝试这样做:

ps aux | grep spark-shell
ps aux | grep metastore
ps aux | grep derby

但没有显示任何进程。可能是什么原因?

最佳答案

我发现这种情况正在发生,因为有多个其他 Spark-Shell 实例已经在运行并且已经持有 derby DB,所以当我启动另一个 Spark Shell 并使用 RDD.toDF() 在其上创建数据帧时,它是抛出错误:

解决方法:

我运行 ps 命令来查找 Spark-Shell 的其他实例:

ps -ef | grep Spark 外壳

然后我使用 kill 命令将它们全部杀死:

kill -9 Spark-Shell-processID(例如:kill -9 4848)

在所有 SPark-Shell 实例都消失后,我启动了一个新的 SPark SHell 并重新运行我的 Data frame 函数,它运行得很好:)

关于java - Metastore db hive - 另一个实例已经在运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41424399/

相关文章:

java - 递归神秘法——有人可以给我解释一下吗?

java - O文档到 POJO

java - 将时间戳转换为 weekNumber mapReduce

hive - 如何实现 avro 别名

hadoop - 如何处理 hive 中的换行符?

java - 从实例调用父方法

java - Java 类中属性的操作

hadoop - 如何在 oozie 作业中将文件添加到分布式缓存

r - 如何在 R 中绘制基于规则的决策树

mysql - 如何在 UBUNTU 中从 Hive 到 HiveServer2