0

我已经在 ec2 服务器上设置了一个非常基本的 LAMP 设置,一切都很好,它似乎可以工作。

但是,对于某些查询,我发现无法连接到 mysql 服务器并出现以下错误:

[07-Jul-2013 20:15:41 Australia/Sydney] PHP Warning:  mysql_real_escape_string(): Access denied for user 'ec2-user'@'localhost' (using password: NO) in /var/www/html/mycobber/class/sql/SqlQuery.class.php on line 40
[07-Jul-2013 20:15:41 Australia/Sydney] PHP Warning:  mysql_real_escape_string(): A link to the server could not be established in /var/www/html/xxx/xxxx/sql/SqlQuery.class.php on line 40

我不明白的事实是,在我的 mysql 连接配置中没有任何位置指定用户 ec2-user。这是我登录 unix 服务器时的默认用户。我已经设置了一个单独的帐户来实际运行我的所有进程,我什至不使用 es2-user。

我在网上看了看,找不到任何可以解释的东西。有没有人知道这里发生了什么。不是所有的时间

4

1 回答 1

1

你不能在mysql_real_escape_string没有先打开连接的情况下打电话mysql_connect

引用文档

在使用mysql_real_escape_string()E_WARNING之前需要 MySQL 连接,否则会生成level 错误并FALSE返回。

错误消息指的是您的默认用户名 @ localhost,因为您尚未使用特定凭据打开连接 - 它不知道要使用哪些帐户详细信息。

于 2013-07-07T13:23:26.110 回答