0

我在 mysql 中创建了一个名为“somedatabase”的数据库

CREATE DATABASE somedatabase;  
GRANT ALL ON somedatabase.* TO 'someuser'@'localhost' IDENTIFIED BY 'somepassword';

但是当我尝试使用 php 应用程序访问此数据库时,出现以下错误

mysql_connect() [function.mysql-connect]: 用户'someuser'@'localhost'的访问被拒绝(使用密码:YES)

Mysql 查询浏览器允许我使用用户名:someuser 和密码:somepassword 登录到该数据库。那为什么我无法通过应用程序连接到数据库。

php代码:

$db_url = 'mysql://someuser:*somepassword*@localhost/somedatabase';
4

3 回答 3

1

使用 GRANT 时,请勿在 someuser 周围使用单引号 (')。

GRANT ALL ON somedatabase.* TO someuser@'localhost' IDENTIFIED BY 'somepassword'; 

我还假设您在与 MySQL 相同的机器上运行 Apache/PHP。

于 2011-04-16T06:17:16.787 回答
0

我有同样的问题。我的问题的解决方案是设置主机,由于某种原因php没有为任何主机上的用户连接(%)

于 2012-01-18T11:26:13.543 回答
-1

试试这个: GRANT ALL PRIVILEGES ON somedatabase.* TO 'someuser'@'%' IDENTIFIED BY 'somepassword';

http://dev.mysql.com/doc/refman/4.1/en/adding-users.html

于 2011-04-16T06:18:54.217 回答