WordPress

WordPressサーバ移行手順


WordPressバージョン

Column変更とかあるかもしれないのでバージョンも記載

Version:4.9.5


手順

仕事で移行する事があったのでメモ

1,2についてはあまりハマらないと思うので省略します。


  1. Git管理しているファイル一式を新サーバでPull


    • Git管理ベストプラクティスについてはこちら



  2. wp-config.phpの設定

  3. DBを移行する

  4. 移行後にDBの値を書き換える

  5. uploadsを移行する


DBの移行

既存のDBをdumpする

$ mysqldump -u USER_NAME -p -h HOST_NAME DB_NAME > OUTPUT_FILE_NAME

移行先でDBを作成する

※文字コードは移行前に合わせた方がよいかも

$ mysql -u USER_NAME -p HOST_NAME

> CREATE DATABASE database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

移行先でimportする

$ mysql -u USER_NAME -p DB_NAME < IMPORT_FILE_NAME


DBの値を書き換え

ドメイン情報をDBに保持しているため書き換える必要がある

※DB情報はwp-config.phpに書いてあるためそこを参照すること

-- 事故防止

START TRANSACTION;

UPDATE wp_options SET option_value=REPLACE(option_value, "移行前ドメイン", "移行後ドメイン") WHERE option_name IN ('siteurl', 'home');
UPDATE wp_posts SET guid=REPLACE(guid, "移行前ドメイン名", "移行後ドメイン名");

-- SELECTして大丈夫なら
COMMIT;
-- SELECTして失敗してたら
ROLLBACK;


ファイルの移動

移行前圧縮

$ tar -zcvf uploads.tar.gz uploads

ファイル移動

$ scp ./uploads.tar.gz user_name@host_name:~/

移行後解凍

$ tar -zxvf uploads.tar.gz

あとはmvして終わり