***: Failed to get schema version. *** : Communications link failure

来源:2-2 Hive安装部署

Rancho蓝卓

2022-09-14 22:11:38

https://img.mukewang.com/climg/6321d90509a47c2a28580794.jpg

在进行hive的初始化命令时,会报如上错误:

org.apache.hadoop.hive.metastore.HiveMetaException: Failed to get schema version.

Underlying cause: com.mysql.cj.jdbc.exceptions.CommunicationsException : Communications link failure


环境:

Mac M1系统的vmware虚拟机;

mysql是官网下的8.0.30,装在Mac机器上。


我首先在慕课的问答库里整体搜这个问题,里边的几篇文章也看了,老师提到的注意点我进行了相关排查:

1、在bigdata04上执行ping mysql主机的操作可以成功ping通;

2、在mac主机上查看防火墙也确认是关闭了的;

3、确认了我的mysql已开启了远程连接,方法是在mac主机上执行命令:mysql -h 172.16.249.1 -uroot -p 可以正常进入mysql;

4、在bigdata04上执行 telnet 172.16.249.1 3306 可以连上mysql;

5、确认mysql-connector-java-8.0.30.jar包已放在hive的lib目录下。


在快要放弃,都准备换一个版本mysql,准备在群里问大家的时候,再看了一眼错误日志,突然发现是有一个配置有点问题:

https://img.mukewang.com/climg/6321de9a0971a77928460772.jpg

ConnectionURL少配置了一个斜杠"/",然后就导致了几个小时被这个问题卡住,改正之后就能初始化正常了。

https://img.mukewang.com/climg/6321def4094cfb3328580548.jpg

然后在mysql hive数据库里也有新增几十个表。


记录上面这些,是给有遇到该问题的其他同学一个参考思路,可能就因为某个配置的一个符号错误,就导致出现连接不上的情况。所以还是要多细心检查文件的配置情况。幸好这个是打印出来了,不然如果是其他配置有问题的话则可能还要花费更多时间、走更多冤枉路。

有点遗憾的是:老师有提到可以在centos 系统上安装mysqlclient,可我这边使用yum无法安装,没有该源,导致无法在linux环境上连接mac 上的mysql服务以早点确认服务连接的情况。如果有同学找到了,可以麻烦回复告知一声,谢谢。


写回答

1回答

徐老师

2022-09-15

点个赞,解决问题的思路很清晰。

yum安装mysqlclient需要配置yum源,目前课程中没有演示,安装mysqlclient主要是为了便于验证和mysql服务器的端口是否可以联通,以及是否开启了远程访问权限。

0

大数据工程师

硬核技能带你攻克热点商业项目,从入门直达中级工程师水平,掌握DT时代淘金利器!

1176 学习 · 1187 问题

查看课程

相似问题

回答 1

回答 2

回答 1