Доступ запрещен для пользователя 'someuser' @ 'localhost' (с использованием пароля: ДА) - PullRequest
0 голосов
/ 16 апреля 2011

Я создал базу данных с именем 'somedatabase' в mysql

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

но когда я пытаюсь получить доступ к этой базе данных с помощью приложения php, я получаю следующую ошибку

" mysql_connect () [function.mysql-connect]: доступ отказано для пользователя 'someuser' @ 'localhost' (используя пароль: ДА)"

Браузер запросов Mysql позволяет мне войти в эту базу данных, используя имя пользователя: someuser и пароль: somepassword. Тогда почему я не могу подключиться к базе данных через приложение.

php код:

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

Ответы [ 3 ]

1 голос
/ 16 апреля 2011

Не используйте одинарные кавычки (') рядом с пользователем при использовании GRANT.

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

Я также предполагаю, что вы используете Apache / PHP на том же компьютере, что и MySQL.

0 голосов
/ 18 января 2012

У меня была такая же проблема. решением моей проблемы была установка хоста, по какой-то причине php не подключался к пользователю ни на одном хосте (%)

0 голосов
/ 16 апреля 2011

Попробуйте это: ПРЕДОСТАВЬТЕ ВСЕ ПРИВИЛЕГИИ в somedatabase. * TO 'someuser' @ '%', ОПРЕДЕЛЯЕМЫМ 'somepassword';

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

...