Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
第一种方法是修改root账户的验证方式,使其变为旧的验证方式.这种方法要求你有超级管理员权限,可以通过以下步骤来实现:
停止mysqld服务:
$ sudo systemctl stop mysql
启动mysqld服务,并加上--skip-grant-tables参数,这将使mysqld启动时跳过用户验证,从而允许你以root账户登录:
$ sudo mysqld_safe --skip-grant-tables
进入mysql shell:
$ mysql -u root
将root账户的验证方式更改为mysql_native_password:
mysql> use mysql;
mysql> update user set plugin='mysql_native_password' where User='root';
mysql> flush privileges;
mysql> quit;
$ sudo systemctl stop mysql
启动mysqld服务,此时root账户的验证方式已经更改完成:
$ sudo systemctl start mysql
现在,你就可以使用root账户以及其密码成功登录MySQL了.
第二种方法是创建一个新的管理员账户,使用这个新账户来管理MySQL数据库.这种方法也要求你有超级管理员权限,可以通过以下步骤来实现:
使用root账户(原有的或是通过第一种方法创建的)登录MySQL,并创建一个新的管理员账户:
mysql> CREATE USER 'admin'@'localhost' IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
这段代码中,admin是新的管理员账户名,password是密码.
退出MySQL:
mysql> quit
检查新账户是否能够成功登录MySQL:
$ mysql -u admin -p
现在,你已经成功创建一个新的管理员账户,并使用这个账户成功登录MySQL了.如果你需要进行一些管理员的操作,就可以使用这个新账户来完成了.
以上就是土嘎嘎小编大虾米为大家整理的相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!