web-dev-qa-db-ja.com

テーブルのフラッシュ-アクセスが拒否されました

データベースをバックアップする必要がありますが、バックアップする前にテーブルをフラッシュしようとすると、このエラーが発生しますか? RELOAD特権とはどういう意味ですか?

PhpmyadminでRELOAD権限が見つかりません!?

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

おそらく、rootを使用してFLUSHコマンドを実行していませんが、ユーザーが制限されています。
RELOADコマンドを実行するには、FLUSH権限を付与する必要があります。
MySQLの権限について ここ を見てください。
したがって、(たとえば)rootユーザーは以下を使用する必要があります。

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

明確にするために:
RELOADはグローバルにのみ付与でき、特定のデータベースには付与できません。 *.*を使用する必要があります

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

MySQLドキュメントから: GRANT構文-グローバル権限

CREATE USER、FILE、PROCESS、RELOAD、REPLICATION CLIENT、REPLICATION SLAVE、SHOW DATABASES、SHUTDOWN、およびSUPER特権は管理者であり、グローバルにのみ付与できます。

16
codewaggle