登录服务器上的mysql:root登录开启远程访问权限
Author:zhoulujun Date:
MySql-Server 出于安全方面考虑默认只允许本机(localhost, 127.0.0.1)来连接访问.
那么必须给root修改远程访问权限!步骤如下:
1、登录msyql
mysql -u root -p
2、更改root密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'pwd';
在mysql8版本中更改用户密码需要加入with mysql_native_password,并且要加入;所以一下两种写法都是不对的。
alter user 'root'@'localhost' identified by 'amp';
alter user 'root'@'localhost' identified with mysql_native_password by 'amp'
alter user 'root'@'localhost' identified with mysql_native_password by 'pwd';
4、设置远程登录
use mysql update user set host='%' where user='root'; flush privileges;
将host字段的值改为%就表示在任何客户端机器上能以root用户登录到mysql服务器,建议在开发时设为%。
5,再执行授权语句:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
可能存在的其它问题:
mysql8.0 引入了新特性 caching_sha2_password;这种密码加密方式Navicat 12以下客户端不支持;
Navicat 12以下客户端支持的是mysql_native_password 这种加密方式;
查看 mysql当前加密方式,看root加密方式方式是否是caching_sha2_password
select host,user,plugin from user;
使用命令将他修改成mysql_native_password加密模式:
update user set plugin='mysql_native_password' where user='root';
参考文章:
mysql8.0.15用户root登录开启远程访问权限 https://blog.csdn.net/liliuqing/article/details/88723409
MySQL8.0允许外部访问 https://blog.csdn.net/h996666/article/details/80921913
转载本站文章《登录服务器上的mysql:root登录开启远程访问权限》,
请注明出处:https://www.zhoulujun.cn/html/DB/mysql/2022_0619_8849.html