当記事はGCPで構築したWordPressへこちらの記事で取得したAMIMOTO AMIのリソースを移行した時に実施した内容となりますが、下記記事の内容で構築した環境である事を前提としている点ご注意下さい。
- GAE+CloudeSQL+GCSでWordPressを構築する①(参考手順と事前準備)
- GAE+CloudeSQL+GCSでWordPressを構築する②(GCPプロジェクトの作成)
- GAE+CloudeSQL+GCSでWordPressを構築する③(CloudSQLでMySQLインスタンスを作成)
MySQL dumpファイルインポート先の事前準備(スキーマ、ユーザーの作成)
MySQL dumpファイルのインポート先(CloudSQLのMySQLインスタンス)にスキーマとユーザーを事前に作成しておく必要があります。
スキーマ名とユーザー名は移行元の情報(移行元WordPressのwp-config.phpに記述している内容)にします。
※こちらの記事を参考にして下さい。
スキーマとユーザーの作成方法について、こちらの記事を参考頂ければと思います。
※作成したスキーマに対して権限付与を忘れずに実施して下さい。
AWSより取得済のMySQL dumpファイルをCloudSQLへインポート
AWSより取得済のMySQL dumpファイルをCloudSQLのMySQLインスタンスにインポートします。
インポート先のスキーマは前述の手順で作成したスキーマとなります。
ターミナルまたはGCPコンソールから実行出来ます、手順はこちらの記事を参考にして下さい。
AWSより取得済のAMIMOTO AMIのリソース一式をGAEのデプロイリソースへ上書き
AWSより取得済のAMIMOTO AMIのリソース一式(WordPressのファイルやディレクトリ)をGAEのデプロイリソースへ上書きしますが2点注意点があります。
- wp-config.phpは上書きしない
Composerからダウンロードしたスクリプト(google/cloud-tools)でGAEのデプロイリソースを作成していますが、GAE向けのwp-config.phpが作成されています。
上書きするとWordPressが動かなくなりますのでご注意下さい。
- ファイル、ディレクトリのパーミッションについて
こちらの記事を参考に適宜変更して頂ければOKかなと思います。
なお、macOS固有の話となりますがパーミッション を表示させた場合ファイルやディレクトリに「@」がつく場合があります。
特に影響はないとは思いますが省く事が出来ます。
wp-config.phpの書換え
書き換える箇所は、DB接続情報の
- スキーマ
- ユーザー
- パスワード
の3箇所になります。
下記を参考にして下さい。
※DBホストの箇所はサンプルです、構築環境や設定したインスタンス名で異なります。
※elseブロックの接続情報はCloud SQL Proxyで接続する時に利用する内容となります。
// ** MySQL settings - You can get this info from your web host ** // if ($onGae) { /** The name of the Cloud SQL database for WordPress */ define('DB_NAME', 'dumpファイルインポート先のスキーマ名'); /** Production login info */ define('DB_HOST', ':/cloudsql/test-wordpress1:asia-northeast1:tutorial-sql-instance'); define('DB_USER', '上記スキーマの操作権限があるユーザー'); define('DB_PASSWORD', '上記ユーサーのパスワード'); } else { /** The name of the local database for WordPress */ define('DB_NAME', 'dumpファイルインポート先のスキーマ名'); /** Local environment MySQL login info */ define('DB_HOST', '127.0.0.1'); define('DB_USER', '上記スキーマの操作権限があるユーザー'); define('DB_PASSWORD', '上記ユーサーのパスワード'); }
他実施した作業について
以下、私が実施した他の作業になります。
- wp-content/upload配下のリソース一式(画像ファイルやプラグインが生成したCSS等)をGCSにコピー
- 画像ファイルのURLと付随するメタデータの置換(Search Regexというプラグインを使いました)
- ドメインの設定
Search Regexの使い方はこちらになります。
ドメインの設定はこちらを参考にしました。
※ドメインの移行などがある場合はそちらの作業があると思いますがこちらは割愛させて頂きます。
まとめ
デジタルキューブさんがカリカリにチューンしたAMIMOTO AMIの移行だったので、何か特殊な対応をしなくてはならないのか?と身構えていましたが、一般的なWordPressの移行作業と同内容で特に難しくはなかったです。
今後WordPressをGCPで運用しながらこういう事をしたいなどがあれば随時ブログに投稿しようと思います。
まずはBigQuery使って分析になりますかね。