启动hive报错org.datanucleus.exceptions.NucleusException:Error creating transactional connecCtion factory

一、问题描述

安装完hive后,在启动时报错:

org.datanucleus.exceptions.NucleusException:Error creating transactional connecCtion factory

启动hive报错org.datanucleus.exceptions.NucleusException:Error creating transactional connecCtion factory_第1张图片启动hive报错org.datanucleus.exceptions.NucleusException:Error creating transactional connecCtion factory_第2张图片

二、解决方案

先退出hive:

exit;

删除/usr/local/hive/lib目录中的jdbc包(即mysql-connector-java-5.1.40-bin.jar文件,本文的是该文件,请读者根据自己以前下载的jdbc包进行删除):

cd /usr/local/hive/lib
rm mysql-connector-java-5.1.40-bin.jar

删除后去MySQL官方网站上 MySQL Connector/J 的下载界面选择与自己的MySQL版本相符合的jdbc包进行下载,下载教程详见:下载mysql jdbc 包详细教程_怎么下载mysql connector/j库-CSDN博客

下载后将下载后的jdbc包拖入虚拟机Ubuntu系统中的下载文件夹,对jdbc包进行解压并将解压后的jar包拷贝到/usr/local/hive/lib目录下(本文以下载mysql-connector-java_8.0.25-1ubuntu16.04_all.deb为例,将解压后的mysql-connector- java-8.0.25.jar拷贝到/usr/local/hive/lib目录下):

cd ~/下载
sudo dpkg -i mysql-connector-java_8.0.25-1ubuntu16.04_all.deb
cd /usr/share/java
cp mysql-connector-java-8.0.25.jar /usr/local/hive/lib

启动hive报错org.datanucleus.exceptions.NucleusException:Error creating transactional connecCtion factory_第3张图片

启动hive报错org.datanucleus.exceptions.NucleusException:Error creating transactional connecCtion factory_第4张图片启动hive报错org.datanucleus.exceptions.NucleusException:Error creating transactional connecCtion factory_第5张图片

完成上述步骤后,问题解决,hive能够成功启动并运行:

启动hive报错org.datanucleus.exceptions.NucleusException:Error creating transactional connecCtion factory_第6张图片启动hive报错org.datanucleus.exceptions.NucleusException:Error creating transactional connecCtion factory_第7张图片

至此,问题成功解决!!!

三、其他可能出现的问题

1.若在启动时出现报错:

org.datanucleus.store.rdbms.exceptions.MissingTableException: Required table missing : "`VERSION`" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations.
可参考:启动hive时报错:Required table missing : “`VERSION`“ in Catalog ““ Schema ““._required table missing : "`version`" in catalog ""-CSDN博客文章浏览阅读132次。启动hive时报错:org.datanucleus.store.rdbms.exceptions.MissingTableException: Required table missing : "`VERSION`" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations.的解决办法(附过程图)_required table missing : "`version`" in catalog "" schema "". datanucleus rehttps://blog.csdn.net/qq_67822268/article/details/134816670

2.若在启动时出现报错:Exception in thread "main" java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument

可参考:启动hive时报错“java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument“-CSDN博客文章浏览阅读197次。启动hive时报错"java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument"的解决方案及详细过程(附过程图)https://blog.csdn.net/qq_67822268/article/details/134815409

四、问题分析

出现上述问题可能是你所安装的jdbc包与下载的MySQL版本不相符,根据自己安装的MySQL版本尽量选择高版本的jdbc包重新安装即可(注意不要过高版本,要与自身的MySQL版本适配

你可能感兴趣的:(Hadoop,hive,hadoop,数据仓库,ubuntu,mysql,linux,大数据)