拒绝访问用户SomeUser的'@“localhost”的(使用密码:YES)
我已经通过名称“somedatabase”在MySQL拒绝访问用户SomeUser的'@“localhost”的(使用密码:YES)
CREATE DATABASE somedatabase;
GRANT ALL ON somedatabase.* TO 'someuser'@'localhost' IDENTIFIED BY 'somepassword';
创建一个数据库,但是当我尝试使用PHP应用程序访问该数据库我得到以下错误
“mysql_connect()函数[function.mysql-连接]:拒绝用户 'SomeUser的' @ 'localhost' 的访问 (使用密码:YES)”
Mysql查询浏览器允许我使用用户名:someuser和password:somepassword登录到此数据库。那么为什么我不能通过应用程序连接到数据库。
PHP代码:
$db_url = 'mysql://someuser:*somepassword*@localhost/somedatabase';
使用GRANT时,不要使用singlequote(')将SomeUser的。
GRANT ALL ON somedatabase.* TO [email protected]'localhost' IDENTIFIED BY 'somepassword';
我还假设你在MySQL的同一个盒子上运行Apache/PHP。
感谢您的即时回复..尝试你的语法没有工作.. – JAB 2011-04-16 06:30:19
你是否在与MySQL相同的盒子上运行Apache?如果没有,那么你必须为请求服务器或所有('%')创建授权。 – lobster1234 2011-04-16 06:31:29
雅我在Apache上运行的Mysql – JAB 2011-04-16 06:37:57
试试这个: 授予somedatabase的所有特权* TO'someuser'@'%'IDENTIFIED BY'somepassword';
即使这个语法没有工作 – JAB 2011-04-16 06:30:52
我有同样的问题。我的问题的解决方案是设置主机,由于某种原因PHP不连接用户在任何主机(%)
这只是在变量赋值你用什么函数连接到MySQL? – 2011-04-16 06:17:54
如果从命令行尝试使用mysql命令行程序,会发生什么情况? – 2011-04-16 06:19:17
你能显示完整的PHP连接代码部分吗? – BugFinder 2011-04-16 06:22:04