[WordPress General] MySQLコマンドラインでDBバックアップ
引っ越しやバックアップなど、phpMyAdminなしでインポート・エクスポートする方法。
Contents
WordPressのテーブル名を確認する
$ mysql -u <mysqlのユーザー名> -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
# 省略
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| wp_blog |
+--------------------+
2 rows in set (0.00 sec)
mysql> exit
wp_ではじめている方が多いかもしれません。
データベースのバックアップ
mysqldump --add-drop-table -h <mysqlのサーバ名> -u <mysqlのユーザ名> -p <wordPressのデータベース名> | bzip2 -c > blog.bak.sql.bz2
バックアップをコピー(SCP)する
新しいサーバにログインして、バックアップファイルを SCP でコピーしてきます。
% scp <古いサーバのユーザー名>@oldserver.jp:~/blog.bak.sql.bz2 ./
blog.bak.sql.bz2 100% 590KB 590.4KB/s 00:00
バックアップファイルからの復元
バックアップファイルを展開します。
% bzip2 -d blog.bak.sql.bz2
インポートをするデータベースを作成します。
% mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
# 省略
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database wp_blog;
Query OK, 1 row affected (0.00 sec)
mysql> exit
インポートします。
% mysql -h <mysqlのサーバ名> -u <mysqlのユーザ名> -p <mysqlのデータベース名> < blog.bak.sql
Enter password:
補遺
WordPress コンテンツの移動
元のサーバで tar にまとめる。-p オプション付きでパーミッションを維持する。
$ tar cvfzp ~/html.tar.gz <blogのディレクトリ>
新しいサーバで復元する。
% cd public_html
% scp <古いサーバのユーザー名>@oldserver.jp:~/html.tar.gz ./
% tar xvfzp html.tar.gz
- 新しいサーバのwp-config.phpを書き換え
- 起動確認
- DNS設定を切り替え