MySQL8在实现远程连接(如远程phpmyadmin访问数据库服务器)时,与早期版本有区别,不能用原来的命令(必须同时创建用户和赋权)。

1.创建用户

mysql>create user admin@'%' identified  by 'admin.';

2.授权

2.1任何主机访问数据的权限

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;

2.2授予admin从任何主机连接到mysql服务器

mysql>grant all privileges on *.* to 'admin'@'%' with grant option;

2.3允许用户admin从ip为192.168.1.6的主机连接到mysql服务器

mysql>GRANT ALL PRIVILEGES ON *.* TO 'admin'@'192.168.1.3' WITH GRANT OPTION;

3.刷新权限

mysql>flush privileges;

4.修改远程连接用户的加密规则(可选)

mysql>ALTER USER 'admin'@'%' IDENTIFIED WITH mysql_native_password BY 'admin.';

内网外网映射端口

若服务器经路由器转发,需将内网端口映射到外网端口。否则会报错:The error (2003) Cant connect to MySQL server on server(10061)