web-dev-qa-db-ja.com

ユーザーがmysqldumpを実行するための最低限の権限?

リモートのmysqldump cronのスケジュールを開始したいのですが、そのために特別なアカウントを使用したいと思います。フルダンプを取得するための最小限のアクセス許可をそのユーザーに付与したいのですが、そのための最善の方法がわかりません。

それは簡単です

grant SELECT on *.* to '$username'@'backuphost' identified by 'password'; 

または私はより良い方法を見逃していますか?

26
Matt Simmons

ユーザーは、バックアップするテーブルの選択権限だけが必要だと思います。

編集: この男 は、「ロックテーブル」権限も割り当てるように言っています。

25
Mike Conigliaro

DBにビューがある場合は、SHOW_VIEWも必要です。

11
Nathan Friend

不思議に思う人のために、ここに正確なコマンドがあります:

GRANT SELECT, LOCK TABLES, SHOW VIEW ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password';
5
wrangler

RELOADも必要なようです。そう:

GRANT SELECT, LOCK TABLES, SHOW VIEW, RELOAD ON *.* TO 'user'@'localhost' IDENTIFIED BY 'password';
5
Ventz Petkov

また、EVENTもダンプしたい場合は、EVENTが必要です。

また、TRIGGERもダンプする場合は、TRIGGERが必要です。 (マニュアルの内容にかかわらず!)

1
Jannes