【WordPress】Xserver から Windows のパソコンへのデータ移行方法
いろいろテストするためにローカルの Windowsパソコンで apache と mysql と wordpress を動かしているのだが,DB の移行の際に忘れて,手間取ることが多いので整理して備忘録として残しておく.
前提条件
Xserver で WordPress を動かしている.
自分のサイトの URL は https://www.xxxxxx.co.jp である.
ローカルの Windows パソコンにウェブサーバーと MySQL と PHP はインストールされている.
ローカルでは http://localhost/ でアクセスする.
ローカル(windows)で空のDBを作成
ルートでログイン
(※コマンドプロンプト(cmd)で実行するが mysql の実行ファイルが存在するディレクトリで実行する.)
mysql -u root -h localhost
ユーザーの作成
mysql> create user 'ユーザ―名'@'localhost';
データベースの作成
mysql> create database データベース名;
mysql> grant all privileges on *.* to ユーザ―名@localhost identified by 'パスワード' with grant option;
mysql> flush privileges;
mysql> quit;
上の2行は【MySQL8.0以降】の場合は下のようになる.
mysql> create user 'ユーザ―名'@'localhost' identified by 'パスワード';
mysql> grant all privileges on *.* to 'ユーザ―名'@'localhost';
ユーザーを作って,権限をつけたら一回抜ける.
エックスサーバーで MySQL のバックアップをダウンロードする
先ほどの画像のような画面に行く.
データベース > MySQLバックアップ で行ける.
そこで,「現在のMySQLをダウンロード」タブを押して,該当するデータベースの場所で「ダウンロード実行」ボタンを押す.
バックアップをとったデータをローカルのデータベースでリストアする
Xserver からダウンロードした sql 文をローカルの MySQL に流し込んで復元する.
Windows 用に変換する
そのまま流し込むとエラーになるので置換を行う.メモ帳で可能だ.
置換は
https://www.xxxxxx.co.jp → http://localhost
と
www.xxxxxx.co.jp → localhost
と
\' → \"
の3つだけを行う.
データを流し込む
以下のようにデータを流し込む.
mysql -u ユーザ―名 -h localhost -p データベース名 < バックアップファイル.sql
もう一度,MySQL に入る.
mysql -u ユーザ―名 -h localhost -p データベース名
直接,データベースの値を変える.
mysql> update wp_options set option_value = 'http://localhost' where option_name = 'home';
mysql> update wp_options set option_value = 'http://localhost/wp' where option_name = 'siteurl';
マルチサイトの場合はこの限りではない.マルチサイトのURLを移動する際に変更する場所【WordPress】を参照.
これで WordPress の管理画面にログイン出来,サイトを見ることも出来るはず.
うまく行かない場合,こちらの説明が間違っている可能性もあるのでフォームからご連絡ください.
ご質問等ありましたら,お手数ですが弊社の個人情報保護方針をお読み頂いた上でフォームからお願い致します.
※このページと無関係な内容のセールスはご遠慮ください.