MySQL Grant Ошибка привилегий пользователя - PullRequest
1 голос
/ 08 мая 2011

У меня есть вопрос относительно того, как предоставить привилегии учетным записям пользователей MySQL.У меня есть учетная запись пользователя MySQL, и в моем примере кода я хотел бы предоставить привилегии всей базе данных.Когда я запускаю код, я получаю следующую ошибку:

Доступ запрещен для пользователя 'user'@'10.%' к базе данных 'testDB'

Вотмой исходный код:

<?php

  $connection = mysql_connect("sql.example.com", "user", "password");

  mysql_select_db("test");

  $query = mysql_query("GRANT ALL PRIVILEGES ON test.* To 'user'@'localhost' 
                         IDENTIFIED BY 'password'");

if (!$query) {
  die(mysql_error());
}

echo "Success!";

?>

Почему я получаю эту ошибку?Может ли кто-нибудь помочь мне с этим?Я был бы очень признателен!

Ответы [ 2 ]

0 голосов
/ 02 октября 2013

Похоже, у вас нет доступа к вашему серверу mysql с такими учетными данными:

"sql.example.com", "user", "password"

Попробуйте сначала создать пользователя с паролем, а затем подключиться к mysql.

Войдите всервер mysql с пользователем root, который у вас есть, таким образом:

shell> mysql --user=root mysql

После этого создайте пользователя, с которым вы собираетесь соединиться:

shell> CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass';

А затем дайте ему разрешения:

shell> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost' WITH GRANT OPTION;

Не забудьте установить хост для подключения, в данном примере это localhost, но в вашем случае это можетбыть чем-то другим.

0 голосов
/ 08 мая 2011

Я думаю, что с php такая же проблема, как и у нативного запроса -> вам нужно выполнить «сбросить привилегии» после оператора предоставления - в противном случае пользовательская таблица не будет обновлена.

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

...