错误消息"Error: FUNCTION 'NUCLEUS_ASCII' already exists. (state=X0Y68,code=30000)"的原因是什么?



输出以下错误信息:

错误:函数'NUCLEUS_ASCII'已存在。(状态=X0Y68,代码=30000(
org.apache.hadoop.hive.metastore.HiveMetaException:架构初始化失败!元存储状态将不一致
根本原因:java.io.io异常:架构脚本失败,错误代码2
使用--verbose获取详细的堆栈竞争
***schemaTool失败***

HiveHadoop守护进程运行良好。在Metastore服务之后,我通过Cygwin运行Hive。我删除了所有Metastoredb目录。然后,在运行下面的命令后,我也面临着上面提到的相同问题。

在Windows命令提示符窗口中:

C:hadoop_newdb-derby-10.14.2.0binstartNetworkServer -h 0.0.0.0

Cygwin终端窗口中:

$HIVE_HOME/bin/schematool -dbType derby -initSchema

错误:

hive > FAILED: HiveException java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient

解决方案:转到以下目录:C: \hadoop_new\apache-hive-3.12\scripts\metastore\upgrade\derby\hive-schema-3.1.0.derby.sql注释"NUCLEUS_ASCII"函数和"NUCLEUS_MATCHES"函数重新运行schematol-dbTypederby-intSchema,然后一切顺利!

我也遇到了类似的问题。错误是因为我试图在建立架构之前启动配置单元。尝试以下操作:

$mv metastore_db metastore_db.tmp

现在运行架构设置。

我在这里找到了这个解决方案。

最新更新