初始化hive时org.apache.hadoop.hive.metastore.HiveMetaException: Failed to get schema version

本文解决了一个常见的Hive元数据异常问题,该问题源于MySQL数据库的时区设置不正确。通过在Hive连接URL中明确指定时区参数,可以避免因时区不匹配导致的HiveMetaException。此方案不仅适用于Hive,也适用于所有使用JDBC连接MySQL的场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

org.apache.hadoop.hive.metastore.HiveMetaException: Failed to get schema version  +  java.sql.SQLException : The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. 

具体错误如下:

下面的解释应该改是mysql时区的问题,新一点的mysql经常会有这种问题。一般都是说java.sql.SQLException : The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone.   搜上面这个异常一般可以找到两种解决方法,一个是更改数据库的时区,但是一般重启后就又要改了,另一种方法就是在代码中设定时区。

 

解决方法:

hive配置文件hive-site.xml中ConnectionURL是这样写的:

    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://192.168.1.134:3306/hive2</value>

没有加时区,要改成下面这样:

    <name>javax.jdo.option.ConnectionURL</name>
     <value>jdbc:mysql://192.168.231.1:3306/hive2?serverTimezone=GMT</value>

然后再初始化就好了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ahuuua

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值