解决:MYSQL远程连接错误码:1130 Host 'xxx' is not allowed to connect to this MySQL server
出现这个问题的原因是当前用户不具备远程登录MYSQL的权限. 而修改这个权限通常有以下两种方式.
>>修改mysql.user表中的用户host值.
>mysql -uroot -pjerval mysql>use mysql; mysql>update user set host = '%' where user = 'freepbxuser'; mysql>flush privileges; mysql>select host, user from user; mysql>quit;
这里将用户freepbxuser的host值修改为'%'(通常默认值是:localhost, 当然也可以将这个值更新成特定的IP, 那么就只允许特定IP的电脑连接), '%'代表允许所有的远程PC使用freepbxuser用户帐号连接此mysql. 修改后通过'flush privileges'命令将权限信息刷新一下(这步很重要,不然更改不能马上生效). 最后通过select语句查看是否update成功.
注:这里必须使用root帐号去修改.
>>通过命令
授权所有在mysql库下的权限给用户jerval2,并允许jerval2用户通过远程任意机器登录mysql:
mysql>grant all privileges on mysql.* to 'jerval2'@'%' identified by '123' with grant option; mysql>flush privileges;
其中identified by '123'可以省略,当然如果用户不需要再有给其它用户授权的能力,则 with grant option 也可以省略. 如实例:
mysql> grant all privileges on mysql.* to 'jerval2'@'%'; Query OK, 0 rows affected (0.01 sec) mysql> flush privileges; Query OK, 0 rows affected (0.01 sec) mysql> select user,host from mysql.user; +------------------+-------------------+ | user | host | +------------------+-------------------+ | jerval | % | | jerval2 | % | | root | 127.0.0.1 | | root | ::1 | | root | jerval-virtualbox | | debian-sys-maint | localhost | | jerval2 | localhost | | root | localhost | +------------------+-------------------+ 8 rows in set (0.00 sec)
扫描二维码关注公众号,回复:
1189466 查看本文章