古いWordPressのMySQL5.7をさくらレンタルサーバーでWordmoveしようとすると、「default.rb:45:in ‘gsub!’: invalid byte sequence in UTF-8」が出るときの解決策

現象:
Docker MarinaDB11.3 → さくらレンタルサーバー MySQL5.7でSQL dumpできない。

解決策:
DockerのSQLをMySQL5.7で合わるしかない。
(MarinaDBのデータはphpMyAdminでエクスポートしてから取り込む)

別解決策(追記)
movefile.ymlのDB設定にmysqldump_options: "--hex-blob" を追記すると上手くいく場合がある(local / vhost共に)


Movefileのdatabase設定 charset: “utf8″で解決できなかった。

具体的にはデータベース内の特定の文字列がUTF-8化できないというエラーなので、特定して潰せるならMarinaDBでもいける。(SQL操作が必要)


かなり昔にWordpressをVagrantでローカル構築して作ったWebサイトを、最近dockerで再開発した。
最近までApple Sillicon MacのdockerでMySQL5.7を使っていたが、どうしてもRossetaで無理やり動作させているため注意マークがでるのが気になっていた。
それならとMarinaDBに切り替えて、他案件ではうまくいっていたのだが、古い案件で特定の文字コードが変換できないみたいなエラーが出た。

テストサイトのデータなのでそこまで時間かけたくなかったこともあって、力技で解決したという備忘録。
困り人の役に立てば幸い。

0