@'localhost'(使用密码:YES)


Access denied for user 'someuser'@'localhost' (using password: YES)

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

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

但是当我尝试使用PHP应用程序访问这个数据库时,我得到以下错误

" mysql_connect()函数。mysql连接]:访问用户'someuser'@'localhost'被拒绝(使用密码:YES)

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

php代码:
$db_url = 'mysql://someuser:*somepassword*@localhost/somedatabase';

使用GRANT时不要在某些用户周围使用singlequote (')

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

我也假设你在同一个机器上运行Apache/PHP MySQL

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

试试这个:授予某些数据库的所有权限。* TO 'someuser'@'%' IDENTIFIED BY 'somepassword;

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