2013-07-02 3 views
0

У меня есть база данных MySQL, которую я использую для тестирования приложения C#. В качестве суперпользователя я вводил следующий запрос:Предоставление прав на MySQL

GRANT ALL PRIVILEGES ON testing.* TO 'Ubuntu'@'localhost'; 

положительное сообщение. Затем я выйти из базы данных, необходимо войти в систему под Ubuntu, и запустить следующий запрос на подключение к LOCALHOST:

USE testing; 

и это сообщение:

ERROR 1044(42000): Access denied for user 'ubuntu'@'localhost' to database 'testing' 

Я также запустить эту запрос:

GRANT ALL PRIVILEGES ON testing.* TO 'Ubuntu'@'%'; 

с таким же результатом.

Что именно мне не хватает? Это кажется довольно простой процедурой ...

+0

На стороне записки, MySQL и учетные записи пользователей операционной системы различны. Вам не нужно входить и выходить из Ubuntu, чтобы «изменить» пользователя, с которым вы подключаетесь. –

ответ

1

Я считаю, что имена пользователей чувствительны к регистру. В ваших запросах я вижу, что вы предоставляете разрешения для «Ubuntu», которые являются прописными, но в вашем сообщении об ошибке «ubuntu» имеет строчный формат.

Кроме того, как отметил AMADANON Inc., то, скорее всего, нужно выполнить запрос

FLUSH PRIVILEGES; 

для того, чтобы разрешения на самом деле пинок.

+0

Удивление, могу ли я дать кредит как вам, так и Amadanon ... оба помогли. – nerdenator

+3

Я думаю, вы можете только отметить один ответ как правильный. Я бы предпочел Рики получить кредит, чем никто. –

+0

Я не уверен, что это возможно, но спасибо, что позволили мне/нам знать, что это сработало! –

2

Вам необходимо промывать привилегии:

FLUSH PRIVILEGES; 

Как Рики указал (что это, общество взаимного восхваления ?!) имена пользователей чувствительны к регистру, поэтому пользователь Ubuntu отличается от пользователя ubuntu

+1

В сочетании с ответом Рики это сработало. – nerdenator

Смежные вопросы