报错内容为;manager.CatalogQueryManager: Failed to list databases java.sql.SQLException: Access denied for user 'hive'@'localhost' (using password: YES)

我遇到的问题是linux的普通用户无法登录mysql,需要使用sudo命令才能使用mysql服务。在做实验时忽略了这点,导致sqoop连接mysql时失败。若非该问题请另寻他法。

解决方法:

使用sudo命令进入mysql页面,输入如下内容

mysql> select user,plugin from mysql.user;
+------------------+-----------------------+
| user             | plugin                |
+------------------+-----------------------+
| root             | mysql_native_password |
| mysql.session    | mysql_native_password |
| mysql.sys        | mysql_native_password |
| debian-sys-maint | mysql_native_password |
| hive             | mysql_native_password |
| root             | mysql_native_password |
+------------------+-----------------------+
6 rows in set (0.00 sec)

mysql> update mysql.user set authentication_string=PASSWORD('123456'),plugin='mysql_native_password' where user='root';
mysql> flush privileges;
mysql> exit

第一个root后跟的应该是auth_socket

更改完mysql后linux普通用户也能使用mysql服务,sqoop连接mysql也成功。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐