***: Failed to get schema version. *** : Communications link failure
在进行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,准备在群里问大家的时候,再看了一眼错误日志,突然发现是有一个配置有点问题:
ConnectionURL少配置了一个斜杠"/",然后就导致了几个小时被这个问题卡住,改正之后就能初始化正常了。
然后在mysql hive数据库里也有新增几十个表。
记录上面这些,是给有遇到该问题的其他同学一个参考思路,可能就因为某个配置的一个符号错误,就导致出现连接不上的情况。所以还是要多细心检查文件的配置情况。幸好这个是打印出来了,不然如果是其他配置有问题的话则可能还要花费更多时间、走更多冤枉路。
有点遗憾的是:老师有提到可以在centos 系统上安装mysqlclient,可我这边使用yum无法安装,没有该源,导致无法在linux环境上连接mac 上的mysql服务以早点确认服务连接的情况。如果有同学找到了,可以麻烦回复告知一声,谢谢。
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星