一、问题描述
在用sqoop连接mysql时,会报错如下图所示,原因是mysql在默认情况下是使用了auth_socket plugin进行认证,即每次登陆都需要sudo mysql -u localhost -p,
sqoop命令中是不能识别sudo关键字的,所以需要去掉sudo关键字连接mysql。
但是如果不使用sudo,就会报错: ERROR 1698(28000):Access denied for user 'root'@'localhost' 。
二、解决办法
修改mysql登陆的验证方式:
alter user 'root'@'localhost' identified with mysql_native_password by 'your password' #这行代码也可以用来修改mysql密码