详细警告:
Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
一、问题
Hive能正常执行任务,但出现“WARN: Establishing SSL connection without server’s identity verification is not recommended.”告警,翻译过来就是“不建议不使用服务器身份验证建立SSL连接。”
hive运行过程中一直报警告,而且和Hiveserver2也会同时报同样的警告
产生的原因是使用JDBC连接MySQL服务器时未设置useSSL参数
二、解决方法
根据告警提示有两种解决方法:
1.设置useSSL=false
这里有个坑就是hive的配置文件是.XML格式,而在xml文件中&;才表示&,所以正确的做法是在Hive的配置文件中,如hive-site.xml进行如下设置
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&useSSL=false</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
2.设置useSSL = true并为服务器证书验证提供信任库。
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&useSSL=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>