сбросить таблицы - доступ запрещен - PullRequest
10 голосов
/ 02 апреля 2012

Мне нужно сохранить свою базу данных, но при попытке очистить таблицы перед резервным копированием я получаю эту ошибку?Что это означает под RELOAD привилегией?

Не удается найти привилегию RELOAD в phpmyadmin!?

Error: Access denied; you need the RELOAD privilege for this operation
SQL: FLUSH TABLES WITH READ LOCK

Ответы [ 2 ]

16 голосов
/ 19 декабря 2012

Для пояснения:
ПЕРЕГРУЗКА может быть предоставлена ​​только глобально, а не конкретной базе данных.Необходимо использовать *.*

GRANT RELOAD ON *.* TO 'your_user'@'localhost';

Из документов MySQL: Синтаксис GRANT - глобальные привилегии

СОЗДАТЬ ПОЛЬЗОВАТЕЛЯ, ФАЙЛА, ПРОЦЕССА, ПЕРЕГРУЗКИ,REPLICATION CLIENT, REPLICATION SLAVE, SHOW DATABASES, SHUTDOWN и SUPER привилегии являются административными и могут быть предоставлены только глобально.

4 голосов
/ 02 апреля 2012

Возможно, вы не запускаете команду FLUSH, используя root, но с ограниченным пользователем.
Вам необходимо предоставить RELOAD привилегию для запуска FLUSH команды.
Посмотрите здесь для привилегий MySQL.
Так (например) пользователь root должен использовать:

GRANT RELOAD ON *.* TO 'your_user'@'localhost';
...