事象
mysqldump 実行時に、
mysqldump: Error: 'Access denied; you need (at least one of) the PROCESS privilege(s) for this operation' when trying to dump tablespaces
のエラーが出力された。
でも、エクスポートされたダンプファイルの中身はちゃんと取れてるっぽい。
原因
出力されてるエラーに書いてるが、権限不足。
テーブルスペースの情報を取ろうとして失敗したみたい。
テーブルスペースの情報が必要なければ
--no-tablespaces
オプションを付けてmysqldumpを実行することでも、エラーを回避できるとのこと。
mysqldumpでPROCESS権限(PROCESS privilege)を要求される - いっさいがっさい
mysqldumpでaccess deniedのエラーが出るときは、ユーザーの権限が不足しています。MySQL 5.7.31以降はPROCESS権限が必要です。
対応
今回は、ネットに繋がってる環境じゃなかったので、MySQLのrootユーザでmysqldumpを実行できる環境からmysqldumpを取り直した。
他には、以下の方法がある。
- PROCESS権限を当該ユーザーに付与してあげる
--no-tablespaces
オプションを付けてmysqldumpを実行する(再掲)
コメント