参考:https://www.cnblogs.com/i6010/articles/7723503.htmlhtml
第一步:在/etc/mysql/my.cnf下找到bind-address = 127.0.0.1mysql
在这行前加个"#"进行注释,或者改成: bind-address = 0.0.0.0sql
容许任意IP访问;或者指定本身须要远程访问的IP地址。数据库
而后重启mysql:sudo /etc/init.d/mysql restart安全
第二步:受权用户能进行远程链接ide
grant all privileges on *.* to root@"%" identified by "password" with grant option;阿里云
flush privileges;3d
第一行命令解释以下,*.*:第一个*表明数据库名;第二个*表明表名。这里的意思是全部数据库里的全部表都受权给用户,若是只是受权某数据库或数据库下某张表,则把*替换成你所需的数据库名和代表便可。root:授予root帐号。“%”:表示受权的用户IP能够指定,这里表明任意的IP地址都能访问MySQL数据库。“password”:分配帐号对应的密码,这里密码本身替换成你的 root账号密码rest
第二行命令是刷新权限信息,让咱们设置的权限立刻生效。htm
可是最终仍是不能访问,此时考虑有多是防火墙及mysql的3306端口问题.
经过命令netstar -a查询全部端口没看到3306,经过命令netstat -an|grep 3306,什么都不显示,能够肯定是3306端口不存在。
登陆阿里云控制台,在云服务安全组新增规则,克隆一个规则出来并把端口号修改为mysql的3306,再次远程链接仍是失败。
重启实例。