Plesk Migration Tool でMySQL Databaseをdumpできない

投稿者: | 2025年10月4日

ログファイルに記録されたエラーメッセージ
stderr: mysqldump: Error 2020: Got packet bigger than ‘max_allowed_packet’ bytes when dumping table `ov_user` at row: 2037
‘max_allowed_packet’はmy.cnfに2GBのmax値で記述しているのにエラーになる

Migration Toolが実行するスクリプト
“–no-defaults”がついているのでmy.cnfを読み込めずにメモリ不足エラーが出てdumpが失敗する

MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysqldump –no-defaults -h localhost -P 3306 -uadmin –quick –quote-names –add-drop-table –default-character-set=utf8mb4 –set-charset –routines –events database_name > database_name.sql

手動でコマンドを実行してダウンロードさせた
* “–no-deraults” を外して実行

MYSQL_PWD=`cat /etc/psa/.psa.shadow` mysqldump -h localhost -P 3306 -uadmin –quick –quote-names –add-drop-table –default-character-set=utf8mb4 –set-charset –routines –events database_name > database_name.sql

mysqldump
–no-defaults オプションファイルを読み取らない
-h localhost ホスト名
-P 3306 TCP/IP接続の場合、使用するポート番号
-uadmin サーバーへの接続に使用するMySQLアカウントのユーザー名
–quick サーバーからのテーブルについて、一度に1行ずつ取得
–quote-names 識別子を逆引用符文字で囲む
–add-drop-table DROP DATABASEステートメントを各CREATE DATABASEステートメントの前に追加
–default-character-set=utf8mb4 デフォルト文字セットを指定
–set-charset SET NAMES default_character_setを出力に追加
–routines ダンプされたデータベースからストアドルーチン(プロシージャーとファンクション)をダンプ
–events database_name ダンプされたデータベースからのイベントのダンプ