タイガーラック クリエイティブブログ
2024
May
30

ローカルDBから本番DBへの移行(WordPress)

今回は当ブログ (WordPress)をローカル環境で構築後、本番実装の際dockerで作成したDBを本番DBに移行する際詰まったことと解決策について書いていきます。

今回のローカル環境と本番環境について

  • サーバーへのアップはFTPツールを使用
  • ローカル環境はdockerで構築
  • phpMyAdminはローカルと本番でバージョンが違う
  • CMSはWordPress

ローカルから本番DB移行の際行った主な手順

  • 本番phpMyAdminにログイン
  • 新規DB作成
    wp-config.phpのDB_NAMEに合わせます
    ここで値を変更した際はファイルのFTPアップ忘れずに!
  • 新規ユーザー追加
    wp-configのDB_USERに合わせます
  • ローカルDBと文字コードをあわせる
    utf8-general-ciがいいみたいです
  • ローカルDBのSQLをエクスポートして本番DBにインポート
    wp_optionsテーブルのURLがローカルURLのままなので本番用に手動で変更

今回起こったトラブル

SQLを本番にインポートしたらエラーが出る…

ALTER TABLE 'wp_comments' default charset=utf8 collate utf8_general_ci;

こんなエラーが出てしまいました。。

原因

→本番DBとローカルDBの文字コードが違うことが原因!
合わせようにも、本番DBのバージョンが古いようで合わせられない。。。
がしかし、アップデートするのも怖いからできない。。

解決策

→SQLファイルをエディターで開いて問題の文字列を一括置換した。
多分、本来はDBの文字コードをちゃんと合わせるなどしたほうが良いかと思います。

本番WordPress管理画面になぜか入れない

原因

→文字コードを手動変更したことが原因

解決策

DBから直接ログイン情報変更することで対応した。

こんな感じのトラブルに見舞われましたがなんとか完了しました!
しかし恐らくこれは超応急処置的なやり方だと思います。
実際その後、ローカルからwp-postsテーブルをエクスポートして本番にインポートしたときに文字コードの違いでまた管理画面に入れなくなりとても焦りました。
そもそもの文字コードをちゃんと合わせることが大事ですね、たぶん。

作業中は部署の上司(SさんとOさん)に幾度となく質問しました…。
教えてくださってありがとうございました!!またひとつ賢くなれました!

ちなみに後日、プライベートで勉強として同じように構築してこの手順で進めたらすんなり完了できました!

このカテゴリの最新記事

関連記事

SHOP LIST

タイガーラック株式会社

〒577-0056
大阪府東大阪市長堂1-3-14 TOKUYASU Bld.