外网连接阿里云服务器 ,阿里云服务器RDS第一次外网连接使用出现各种坑记录一下!!
报错一:No route to host
防火墙端口3306开启
报错二:Host’xxx’is not allowed to connect to this MySQL server
这是由于你要增加的Mysql数据库只允许本机进行连接,不允许远程IP进行登录。解决办法如下:
1.先设置白名单
设置0.0.00/0表示任何服务器皆可访问,或者请求数据库的服务器外网ip,127.0.0.1表示限制外网访问。
2.设置账号权限
方法一、根据提示信息,把提示拒绝连接的IP 121.43.18.66 (IP地址以实际控制台提示的为准)在自建MySQL中进行授权,允许远程连接。登录Mysql数据库,执行授权命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'121.43.18.66' IDENTIFIED BY '密码' WITH GRANT OPTION;
flush privileges;
方法二、或者给MySQL设置用户授权,允许所有远程IP都可以连接数据库,然后再进行添加。登录Mysql数据库执行授权命令:
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
flush privileges;
执行以上两个方法中的任何一个(推荐方法一)后在阿里云数据管理中即可正常添加数据库。添加数据库成功后,可以登录进入阿里云DMS系统进行数据库管理。
阿里云如果报错Access denied for user ‘rootxxx’@’%’ (using password: YES)
是因为不是最高权限管理员,可以通过账号管理->自定义权限->创建用户
主机%为全部允许,或者请求数据库的服务器外网ip,127.0.0.1表示限制外网访问。记得选择相应的全局权限。
程序env输入云数据库外网地址,切记不是服务器地址找坑找了一天。