您的位置:首页 > 数据库 > MySQL

MySQL8.0设置远程访问权限(解决Navicat无法远程连接)

2019-06-03 13:58 1056 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/MYians/article/details/90751027

MySQL8.0设置远程访问权限(解决Navicat无法远程连接)

如果是Windows系统的Mysql允许局域网其他用户访问,请先配置文末的设置
1、连接Mysql(root):mysql -u root -p 2、输入密码:****** 3、创建访客用户(需设置复杂密码 , 不建议使用简单密码):CREATE USER ‘guest’@’%’ IDENTIFIED BY ‘Gusest123456.!’; 4、设置密码永不过期:ALTER USER ‘guest’@’%’ IDENTIFIED BY ‘Gusest123456.!’ PASSWORD EXPIRE NEVER; 5、修改加密规则:ALTER USER ‘guest’@’%’ IDENTIFIED WITH mysql_native_password BY ‘Gusest123456.!’; 6、授权访问某个数据库(指定 test 数据库):GRANT ALL PRIVILEGES ON test.* TO ‘guest’@’%’ WITH GRANT OPTION; 7、刷新权限:FLUSH PRIVILEGES; 8、撤销权限(root):REVOKE PRIVILEGES ON test.* FROM ‘guest’@’%’; 9、刷新权限:FLUSH PRIVILEGES; 10、删除用户(root):DROP USER ‘guest’@’%’;

如果是Windows系统的Mysql允许局域网其他用户访问,请先配置以下设置;

控制面板—>系统和安全—>Windows Defender 防火墙(win7/8/10可能不太一样)
—>高级设置—>入站规则(左侧面板)—>新建规则(右侧面板)
—>规则类型:选择端口 下一步
—>协议和端口:TCP/特定本地端口(输入:3306) 下一步
—>操作:允许连接 下一步—>配置文件:勾选 域、专用 下一步
—>名称:名称和描述(描述可不写)
—>完成

附:修改密码的加密规则,设置简单密码(不推荐)

注:此方法是在在网上找到的,仅供参考

地址:https://www.cnblogs.com/zgxblog/p/10708182.html

(3.1)赋予 root 用户,远程连接权限( 注意语句以 ; 结尾 )

说明:如果只在本机使用 MySQL ,此步骤( 3.1 )可省略,但是 ( 3.2 )( 3.3 )中的 ‘root’@’%’ 要改成 ‘root’@‘localhost’

use mysql;
update user set host='%' where user='root';

(3.2)Mysql 5.7 等版本

#调整密码验证规则:
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;

#重新设置密码:
mysql> ALTER USER 'root'@'%' IDENTIFIED BY '123456';

(3.3)Mysql 8.0 等版本

#先修改一个满足的密码 (如:Admin123.!)(如果本来就是复杂密码不用设置)
ALTER USER 'root'@'%' IDENTIFIED BY 'Admin123.!';
#密码修改后,可用命令查看 validate_password 密码验证插件是否安装。
mysql> SHOW VARIABLES LIKE 'validate_password%';

#修改MySQL 8.0 调整密码验证规则:
mysql> set global validate_password.policy=0;
mysql> set global validate_password.length=1;

#重新设置密码:
ALTER USER 'root'@'%' IDENTIFIED BY '123456';
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: