2012-04-02 35 views
6

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

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

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

答えて

1

おそらくFLUSHコマンドはrootを使用していますが、限られたユーザーしか実行していない可能性があります。
FLUSHコマンドを実行するには、RELOAD特権を与える必要があります。
MySQL特権のためにhereを見てください。
だから、(例えば)rootユーザーが使用する必要があります。

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

これは私が代わりにこれを行うことができるということですか? '#mysqladmin flush-tables'? – clarkk

+0

@clarkk: 'RELOAD'権限を持っているなら、' FLUSH'を使う 'mysqladmin'コマンドを実行することができます...しかし、' RELOAD'権限が与えられるのを待たなければなりません... – Marco

+0

パスワードはどこに入れますか?クエリ? – clarkk

15

を明確にする:
RELOADだけではない、特定のデータベースに、世界的に付与することができます。 MySQLのドキュメントから*.*

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

を使用する必要があります。GRANT Syntax - Global Privileges

は、USER、FILE、プロセスを作成、RELOADは、複製CLIENT、 レプリケーションスレーブは、SHOW DATABASES、SHUTDOWN、そしてSUPER権限は です管理することができ、グローバルにのみ付与することができます。

+0

正解を提供してくれてありがとう@codewaggie。 –

関連する問題