PHP MySQLi查询 - "权限被拒绝"

Rol*_*asR 3 php mysql mysqli

我使用PHP MySQLi连接MySQL,有时做查询我得到错误:

"权限被拒绝"错误代码:2002.

奇怪的是,它发生在不同的查询中,完全不可预测.例如,在前两次正确执行后,它可能发生在第三个查询上.

我知道这不是MySQL的问题,因为我将它从一个服务器移动到另一个服务器,问题仍然存在.很可能是PHP的问题或PHP和MySQL服务器之间的互连(它们在不同的机器上)

有人有想法吗?

编辑:
查询什么获得"权限被拒绝"工作,如果我重新启动脚本 - 它不是权限问题

错误:

[23-Apr-2011 19:00:02] PHP警告:mysqli :: mysqli()[mysqli.mysqli]:[2002]权限被拒绝(尝试通过tcp连接://xxx.xxx.xxx.xxx:3306 )在/home/.../DB.php第19行
[23-Apr-2011 19:00:02] PHP警告:mysqli :: mysqli()[mysqli.mysqli] :( HY000/2002):权限被拒绝在第19行的/home/.../DB.php中

小智 14

我的环境也发生了同样的事情.原因是SELinux.

您可以通过从命令行执行php来连接数据库,而不是通过在Web服务器上执行.

在我的情况下,我关闭了SELinux.

# setenforce 0
Run Code Online (Sandbox Code Playgroud)

或者您必须正确设置SELinux.

  • 我总是在新服务器安装上忘记SELinux,它总是以某种方式中断工作流程.感谢提醒让我继续前进. (2认同)
  • 有关如何正确设置 SELinux 的想法,请参阅接受的答案:https://serverfault.com/questions/240015/how-do-i-allow-mysql-connections-through-selinux (2认同)

Wor*_*rld 0

我认为数据库用户没有足够的权限对​​特定的 mysql 表进行特定操作。