开放防火墙端口***

为了防止开了权限没开端口,所以第一步就开放端口吧!!!,我以我的MySQL端口3306为例,自行修改端口号。

1、控制面板打开防火墙,点击高级设置

mysql开放远程连接权限_ide

 2、点击入站规则、新建规则

mysql开放远程连接权限_命令行_02

 3、选择:端口---下一步

mysql开放远程连接权限_ide_03

 4、输入要开放的指定端口(例如MySQL是:3306),下一步

mysql开放远程连接权限_mysql_04

 5、允许链接---下一步

mysql开放远程连接权限_用户名_05

 6、此步骤无需配置,直接下一步

mysql开放远程连接权限_mysql_06

 7、填入规则名,点击:完成

mysql开放远程连接权限_ide_07

一、MySQL 8

1、使用Navicat

打开Navicat,点击用户
mysql开放远程连接权限_ide_08
选择自己的mysql用户名,点击编辑用户
mysql开放远程连接权限_ide_09
将主机一栏由localhost改为%,就是将只能本机访问换成所有其他机子可访问
mysql开放远程连接权限_ide_10
改好后保存即可远程连接了

2、命令行模式

1、命令行连接到数据库

mysql -uroot -p

2、切换到mysql数据库

use mysql 

3、更新权限数据

update user set host='%' where user = 'root'

这句话的意思是修改用户设置,将用户root能够访问的主机修改为'%',%是通配符,意思是所有主机都能够匹配
如果是需要修改其它用户的权限,那么这里就将root改成其它用户名

4、刷新权限

flush privileges

刷新mysql的权限设置,让这个操作生效

二、MySQL 5

1.登陆mysql数据库

mysql -uroot -p

2.增加远程连接权限

use mysql;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'  IDENTIFIED BY '密码'  WITH GRANT OPTION;
flush privileges;

如果只需要某一个ip段访问

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.%'   IDENTIFIED BY 'admin123'  WITH GRANT OPTION; 

3.修改MySQL配置文件

vim /etc/mysql/mysql.conf.d/mysqld.cnf

注释掉bind-address这行

4.重启mysql服务

service mysql restart