スポンサーリンク

AMIMOTO AMIをGCPへ移行する③(GCPへ移行)

この記事は約5分で読めます。

当記事はGCPで構築したWordPressへこちらの記事で取得したAMIMOTO AMIのリソースを移行した時に実施した内容となりますが、下記記事の内容で構築した環境である事を前提としている点ご注意下さい。

スポンサーリンク

MySQL dumpファイルインポート先の事前準備(スキーマ、ユーザーの作成)

MySQL dumpファイルのインポート先(CloudSQLのMySQLインスタンス)にスキーマとユーザーを事前に作成しておく必要があります。

スキーマ名とユーザー名は移行元の情報(移行元WordPressのwp-config.phpに記述している内容)にします。

※こちらの記事を参考にして下さい。

AMIMOTO AMIをGCPへ移行する①(下準備編:移行リソースの取得)
大した内容ではありませんが作業の備忘録です。当ブログはAMIMOTO AMIを利用しておりますが、EC2+RDS(MySQL)の構成となっております。よって、・EC2・RDS(MySQL)双方から移行リソースをまずは取得する必要が...

スキーマとユーザーの作成方法について、こちらの記事を参考頂ければと思います。

GAE+CloudeSQL+GCSでWordPressを構築する③(CloudSQLでMySQLインスタンスを作成)
この記事はWordPressに必要なDBの作成についてのお話になります。CloudSQLでMySQLインスタンスを作り、Cloud SQL ProxyでDBを操作してみたいという方にも当記事はお役立て頂けると思います。当記事の作業の...

作成したスキーマに対して権限付与を忘れずに実施して下さい。

スポンサーリンク

AWSより取得済のMySQL dumpファイルをCloudSQLへインポート

AWSより取得済のMySQL dumpファイルをCloudSQLのMySQLインスタンスにインポートします。

インポート先のスキーマは前述の手順で作成したスキーマとなります。

ターミナルまたはGCPコンソールから実行出来ます、手順はこちらの記事を参考にして下さい。

Cloud SQL へのデータのインポート  |  Cloud SQL for MySQL  |  Google Cloud
スポンサーリンク

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固有の話となりますがパーミッション を表示させた場合ファイルやディレクトリに「@」がつく場合があります。

特に影響はないとは思いますが省く事が出来ます。

MACのファイル属性(パーミッション)に付与される「@」を削除する - Qiita
環境:MacBookPro MacOS HighSierra ver10.13.6 AWS構築時にSSH用の.pemのファイルをダウンロードしたところ、ファイルのパーミッションの最後に@が付いていました。 [hoge:~/.ssh/...
スポンサーリンク

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の使い方はこちらになります。

Search Regexプラグイン(記事やコメント内容を一括置換) - WordPressおすすめプラグイン一覧
Search Regexプラグインは過去に投稿した記事の内容を一括置換することができるプラグインです。記事の本文やコメントの内容など、対象を指定して指定した文字列に一致するものを一括して別の文字列に置換することができます。ここではSearch Regexプラグインのインストール方法と使い方について解説します。

ドメインの設定はこちらを参考にしました。

超簡単!GAEアプリにカスタムドメインとSSLを適用する方法!!
前回の記事では、Google Domainsでドメインを購入する手順(※1)について説明しました。今回の記事では、GAEアプリケーションに対して(Google Domainsで購入した)ドメインとSSLを設定する方法につ ...

※ドメインの移行などがある場合はそちらの作業があると思いますがこちらは割愛させて頂きます。

スポンサーリンク

まとめ

デジタルキューブさんがカリカリにチューンしたAMIMOTO AMIの移行だったので、何か特殊な対応をしなくてはならないのか?と身構えていましたが、一般的なWordPressの移行作業と同内容で特に難しくはなかったです。

今後WordPressをGCPで運用しながらこういう事をしたいなどがあれば随時ブログに投稿しようと思います。

まずはBigQuery使って分析になりますかね。

 

スポンサーリンク
GCP
ヤマログ
タイトルとURLをコピーしました