Underlying cause: com.mysql.cj.jdbc.exceptions.CommunicationsException : Communications link failure
Hive试图schematool -dbType mysql -initSchema时候报错如下:
Metastore connection URL: jdbc:mysql://Desktop:3306/hive?characterEncoding=utf8&useSSL=false
Metastore Connection Driver : com.mysql.cj.jdbc.Driver
Metastore connection User: appleyuchi
org.apache.hadoop.hive.metastore.HiveMetaException: Failed to get schema version.
Underlying cause: com.mysql.cj.jdbc.exceptions.CommunicationsException : Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
SQL Error code: 0
Use --verbose for detailed stacktrace.
*** schemaTool failed ***
(Python3.6) appleyuchi@Desktop:~$ netstat -an|grep 3306
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN
tcp6 0 0 :::33060 :::*
问题就出在当前节点外界不可访问,根据[1]处理之后
(Python3.6) appleyuchi@Desktop:~$ netstat -an|grep 3306
tcp6 0 0 :::3306 :::* LISTEN
tcp6 0 0 :::33060 :::* LISTEN
再次初始化hive数据库:
schematool -dbType mysql -initSchema
成功
问题的原因是:
hive-site.xml中的Desktop:3306不可访问,所以要把mysql设置成远程可以访问的。
Reference:
[1]mysql8设置局域网访问
总结
以上是生活随笔为你收集整理的Underlying cause: com.mysql.cj.jdbc.exceptions.CommunicationsException : Communications link failure的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 子域名收集利器——oneforall
- 下一篇: Kafka实现MySQL增量同步