一、目的
在删除HDFS中Hive目录下的数据文件后,导致HQL查询异常,以及XShell连接MySQL出现异常
二、问题
(一)HQL查询问题
SQL语句在增加group by之后查询无数据,没有group by则查询有数据
而且SQL语句无法动态加载到表中
(二)XShell连接MySQL出现异常
Navicat连接MySQL正常,但是XShell连接MySQL出现异常
ERROR 2002 (HY000): Can t connect to local MySQL server through socket /tmp/mysql.sock (2
三、原因猜测
由于Hive的元数据库是在MySQL中,因此频繁多次删除HDFS的Hive的表文件,则会导致异常,这个问题之前其实发生过
四、解决方法
(一)XShell连接MySQL问题(亲测,已解决)
1、执行MySQL的config_tar.sh脚本
# sh config_tar.sh
2、执行完脚本后XShell就可以登录MySQL
(二)HQL查询问题(猜测、但也解决)
1、重装Hive(好像并不需要重新装)
结果是在原有DataGrip控制台执行SQL语句还是没有用
2、开启DataGrip新的控制台
结果是在新的控制台中查询语句有用,也可以正常插入
所以,感觉并不需要重新安装Hive(后续建库建表太费事),只需要开启DataGrip新的控制台即可!
HQL查询失败应该是删除HDFS中的Hive数据文件导致DataGrip原有控制台的查询能力出现问题,只需要开启新的控制台即可!