环境:
本地:Windows10
远程:阿里云window
MySQL:5.7
本地Windows连接阿里云上的MySQL失败,常见是两个原因:(必须两个问题都解决,才行)
1.阿里云服务器的访问端口没设置,阿里云的访问端口是有限制的,如果你要使用3306端口,就必须,自己去打开。
2.MySQL默认是不允许,远程访问的,所以必须修改MySQL的设置。
解决方案如下:
对于第一个问题有两种解决方案;
方案一:改变MySQL使用的端口号,不使用3306。但是因为阿里云默认能访问的端口只有22和3389,所以这个方案还是要修改服务器的可访问端口,所以基本不用,只作为一个思路。
方案二:打开阿里云服务器的3306端口
第一个问题解决了。
对于第二个问题的解决方案:
在服务器上用cmd打开命令行,登录进MySQL,必须以root用户的身份登陆,再输入以下命令。就打开了以root身份远程访问MySQL的权限。
grant all privileges on *.* to 'root'@'%' identified by '密码' with grant option;
到这问题应该已经解决了。
扩展:
1.MySQL的登陆命令
mysql -h localhost -P 端口号 -u 用户名 -p 密码;
2.MySQL创建用户,只是创建了用户,该用户还没有任何权力
grant usage on *.* to '用户名'@'localhost' identified by '密码' with grant option;
3.给创建的用户授权
grant select,insert,update,delete,create,drop on table name.* to '用户名'@'localhost' identified by '密码';
4.打开其他用户远程访问MySQL的权限,必须以root身份登陆才能修改。
grant all privileges on *.* to '用户名'@'%' identified by '密码' with grant option;