mysqldumpのアクセス拒否エラー

さくらのレンタルサーバー(スタンダード)でデータベースを毎日バックアップするようcronで設定していた。

が、

2020年12月10日からエラーを吐くようになった。

mysqldump: Error: 'Access denied; you need (at least one of) the PROCESS privilege(s) for this operation' when trying to dump tablespaces

PROCESS権限とやらが必要らしい。

エラーが出る条件

原因と対策を調べてみたが、もともとよそ様が公開してくださっているスクリプトをアレコレして利用していたのでコマンド自体がよくわっていない。

さくらで取っているプランが20ほどあるので、それぞれの条件とエラーの有無を照らし合わせた結果「MySQL 5.7のせい」ということになった。

改めて解決方法を検索

mysqldumpでPROCESS権限(PROCESS privilege)を要求される

上記の方が記事にされている通り、--no-tablespacesオプションでエラーは出なくなった。ありがとうございます。

テーブルスペースとは

--no-tablespacesは、「 CREATE LOGFILE GROUP ステートメントおよびCREATE TABLESPACE ステートメントを抑制」するオプションらしい。

どちらも使われていなかったので、オプション追加前後でバックアップされた内容には変化が無かった。

MySQLは5.7.28から5.7.32になっていた。

この記事が気に入ったら、サポートをしてみませんか?
気軽にクリエイターの支援と、記事のオススメができます!
片田舎でパソコン相手に仕事をしています。 何かを解決したときの覚書をしていこうと思います。