mysqldumpでwordpressのデータベースのホストを変更
今まで、blogのデータベースをAmazon AWSのRDSでやってたんだけど、大して使わない割に請求金額がそこそこなので、EC2上に普通にMySQLサーバを立てて、そっちのデータベースサーバーを参照するようにした。
ところが、DB情報を記載した wp-config.phpをいじっただけではもちろんダメで、
/** MySQL のホスト名 */ #define('DB_HOST', 'mydbinstance.XXXXXXXXXXXXX.rds.amazonaws.com'); define('DB_HOST', 'localhost');
空のDBを参照しているので、完全に最初の状態、何の設定も記事もない状態に。
あらかじめ、Wordpressのエクスポートツールで出力したデータをインポートしてみたもののなぜか失敗。
記事自体は大した数を書いてなかったので、まぁ最初からでもいいや…と思いきや、各種設定やプラグイン、Facebook連携のセットなどなどはとてつもなく面倒で、しかも参考にするべき記事も既に消えた状態…
結論から言うと、元のデータベースにあった情報をまるごと出力して、それを何もない最初の状態の新しいDBサーバに入力することで、上手くいった。
まず新しい方のMySQLサーバで、dbuserとwordpress データベースを作成し、こちらの記事を参考に出力と入力を行った。
"MySQLのデータインポート・エクスポート - Qiita"
% mysqldump -h mydbinstance.XXXXXXXXXXXXXXXXX.rds.amazonaws.com --port XXXX wordpress -r SQLWordpress -u dbuser -p % mysql -u dbuser -p XXXXXXXX wordpress < SQLWordpress
wordpressの設定も記事も何もかも元の状態に。よかったよかった。