我的mysql是安装在云服务上的,系统是Linux;在Linux环境下默认是关闭3306端口远程连接的,所以需要开启;我在安装mysql的时候已经开启了。

如果是云服务器上的mysql:要修改  sudo vim   /etc/mysql/my.conf

找到bind-address = 127.0.0.1这行 改为

       bind-address= 0.0.0.0

mysql的账号默认不允许从远程登录,只允许localhost访问。

方法一:

进入mysql后,需要更改 "mysql" 数据库里的 "user"(远程数据库的名称) 表里的"host" 项,把"localhost"改称"%" (表示所有地址IP都可以访问mysql服务器)。这样你的mysql就可以远程操作了。

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

但是这样不安全。

方法二:授权

grant select,insert,update,delete on *.* to root@"%" Identified by "password";

只赋给地址IP上的root 账号 select,insert,update,delete 权限 ,这样比较安全。

将‘%’换成指定ip表示只允许给ip上的root用户访问:例如:

grant select,insert,update,delete on *.* to root@"192.168.1.10" Identified by "password";

将赋予权限改成all时表示赋予该ip上root用户所有权限 例:

grant all on *.* to root@"192.168.1.10" Identified by "password";(这样并不安全)


修改完成之后重启mysql服务器: sudo service mysql restart


Logo

更多推荐