SQLSTATE[HY000] [1130] Host '139.129.142.19' is not allowed to connect to this MySQL server 的解决办法

来源:互联网 发布:索尼卖大楼知乎 编辑:程序博客网 时间:2024/06/08 02:48

先描述一下问题:就是做好的网站放到在阿里买的主机后,其他页面的问题没有了。但是出现了链接数据库出错的问题,【SQLSTATE[HY000] [1130] Host '139.129.142.19' is not allowed to connect to this MySQL server


然后,我就百度说给用户权限,

grant 权限 on 数据库对象 to 用户

一、grant 普通数据用户,查询、插入、更新、删除 数据库中所有表数据的权利。

grant select on testdb.* to common_user@'%'grant insert on testdb.* to common_user@'%'grant update on testdb.* to common_user@'%'grant delete on testdb.* to common_user@'%'

1. grant 作用在整个 MySQL 服务器上:

grant select on *.* to dba@localhost; -- dba 可以查询 MySQL 中所有数据库中的表。grant all    on *.* to dba@localhost; -- dba 可以管理 MySQL 中的所有数据库

查看当前用户(自己)权限:

show grants;

 

查看其他 MySQL 用户权限:

show grants for dba@localhost;

撤销已经赋予给 MySQL 用户权限的权限。

revoke 跟 grant 的语法差不多,只需要把关键字 “to” 换成 “from” 即可:

grant  all on *.* to   dba@localhost;revoke all on *.* from dba@localhost;


MySQL grant、revoke 用户权限注意事项

1. grant, revoke 用户权限后,该用户只有重新连接 MySQL 数据库,权限才能生效。

2. 如果想让授权的用户,也可以将这些权限 grant 给其他用户,需要选项 “grant option“

grant select on testdb.* to dba@localhost with grant option;

这个特性一般用不到。实际中,数据库权限最好由 DBA 来统一管理。


但是这些都没有解决问题,后来我就提交了工单:然后一下子就明白了  :DB_Host填写的是数据库地址,您的数据库地址/数据库名/用户名都可以到主机管理控制台查看下,并不是IP地址

阅读全文
0 0
原创粉丝点击