スキップしてメイン コンテンツに移動

wordpressを手動でバックアップして、新しいドメインへ移行してみる

自宅サーバ(Linux)で運用しているこのブログは、現状サーバのHDDが死んじゃうと、データもすっ飛んじゃうある意味危険な状態ではありますが、現時点でそんなに多くの記事を書いてないということもあり、大して被害もないと・・でも、バックアップは必要ということで、ちょっと調べながら、wordpress丸ごとバックアップを取って別のドメインへリストア(復元)する実験をしてみました。まず、wordpressのバックアップには以下の2つのコピーを取る必要がります。

  • mysqlの記事データ

  • worpress本体やUPしている画像などファイル


この2点について、具体的の手順を追ってみます。



mysqlの記事データバックアップ


wordpressファイルより肝心な、記事そのものです。ここだけでも、定期的にバックアップを取っておいた方が良いですね(;^_^A どうせ、大した作業量でもないので・・
と言うわけで、以下のコマンドでwordpressのデータベースを丸ごとダンプします。
$ mysqldump wp_database > dump.sql -u user1 -p

このコマンドを打つと、パスワードを要求されるので、インストール時に設定した(?)パスワードを入力します。それ以外は、

user1:ユーザ名
wp_database:wordpressのデータベース名
dump.sql:ダンプするファイル名

です。ここら辺りの情報を忘れていても、wp-config.phpファイルを開けば書いてあります。ユーザ、パスワード、データベース名が正しければ、カレントにdump.sqlが作成されます。



worpress本体のバックアップ


先ほどのバックアップが、記事そのものだったのに対して、こちらはwordpressの本体です。なので、移行先のサーバへ新規にwordpressをインストールして、MySQLのリストすれば、記事は復活しますが、画像ファイルは失われます。また、wordpressを使っている以上、結構変更したテンプレートやプラグインがあったりするので、それらを復元するべくバックアップします。

FTPクライアントソフトなどを使って、定期的にwindowsマシンへ手動ダウンロードしておく手もありますが、デフォルト総容量がそんなに小さなサイズでもないですし、ファイル数も多いので、結構時間がかかります。LAN内でも・・。

どうせ、windowsマシンにDLするにしても、圧縮した方が早いです。圧縮処理自体もすぐ終わるので。理想は、Linuxから無料のオンラインストレージ(Dropbox)へ保管する予定です。と言うわけで、単に圧縮のコマンドです。
$ tar cvjf bkhana.tar.bz2 hanagosho

bkhana.tar.bz2:圧縮ファイル名
hanagosho:wordpressが入ってる圧縮対象のディレクトリ
※hanagoshoディレクトリがあるカレントでの実行です。

ちなみに、圧縮前のhanagoshoディレクトリの総容量は、以下のコマンドで求めることができます。
$ du -sm hanagosho

オプションにmと付けてるので、MBの単位で表示します。-kだとKBで-bだとByteで表示されます。



リストア(復元)先の環境を作っておく


前提として、takaiwa.net → hanabackup.comドメインへ移行させます。

公開の手順として、まずMySQLファイルからリストアを行います。wordpress本体からリストアをやると、データベース接続エラーとか出ちゃうので。

と言うわけで、先ほどのsqlファイルをリストアさせるデータベースを作成します。まず、root権限でMySQLへ接続。
mysql> create database wp_resotretest;

上記コマンドで、 wp_resotretest というデータベースを作成します。基本的にルート権限で運用しないと思われますので、作成したデータベースへ以下の処理を施してやります。

character設定
mysql> ALTER DATABASE wp_resotretest DEFAULT CHARACTER SET=utf8;



ユーザのアクセス権限
mysql> GRANT ALL ON wp_resotretest.* to user1@localhost identified by 'password';



変更内容の反映
mysql> FLUSH PRIVILEGES;


これらの設定内容は、後ほど展開するwp-config.phpと同期が取れてればOKです。



MySQLデータのリストア(復元)


さて、環境が整ったので、リストアと行きたい所ですが、前述のようにドメインが変るので、テキストエディタ等で、dump.sqlを開きます。takaiwa.net → hanabackup.comへ置換し、保存します。

で、そのファイルを基に、いよいよリストアです。以下のコマンドを実行すると、
$ mysql -u user1 wp_resotretest < dump.sql -p

パスワードが要求されるので、正しく入力すれば、リストア完了です。うーん、簡単・・



wordpress本体のリストア


hanabackup.comの公開htmlファイルのディレクトリへいきなり展開するのではなく、どこか適当なディレクトリへ展開。
$ tar jxvf bkhana.tar.bz2


先ほどのデータベース作成の所で、設定した内容と一致させるべく、展開したファイルからwp-config.phpを探し、データベース名、ユーザ名、パスワードを修正します。バックアップ時と変っていないなら、別にしなくて良いです。

修正が終わったら、ディレクトリを公開用ディレクトリへ移動。
$ mv hanagosho /var/www/html


これで、リストア完了。ブラウザで、hanabackup.comと入力すると、



見事同じものが表示されました。記事をクリックしても、内容が表示されます。


WordPressスーパーカスタマイズ 3.0対応 ポテンシャルを100%引き出すテクニック
下野 宏 下野 理子
ソフトバンククリエイティブ
売り上げランキング: 9706

コメント

このブログの人気の投稿

Javaでprivateなfieldやmethodにアクセスする

JUnitでテストしてると、privateなフィールドにアクセスして、値を参照したりセットしたりしたくなるわけですが、よく使うのでメモしておきます。 例えば、次のような対象のクラスがあるとします。 public class ParentClass { private String hoge = "ParentClass!!"; public void dispMsg() { System.out.println("dispMsg:" + hoge); } private void privateDispMsg(String msg) { System.out.println("dispMsg:" + msg); } }

GolangでWindows GUIアプリケーション

GUIアプリ作成の前提 社内ツールとしてexeで配布 開発環境はGoLandを使う 社内ツールとしてexeを配布ということであれば、Visual StudioでC#による開発だと思います。しかしながら、Go言語を習得したいのと、GoLandの補完機能が便利で、Android Studio使っていたこともあり、とっつきやすいという点からGo縛りでGUIアプリケーションを考えたいと思います。 lxn/walk Windows application library kit for Go. Windows向けしか考えていないので、まずこのライブラリなのですが、ボタンやコンボボックスが思ったように並ばなかったり、手軽にイメージボタンを配置したりなど、簡単にレイアウトを変更できない課題に直面しました。レイアウト作成だけで時間を取られてしまいます。そう言えば、Androidアプリ開発のときは、XMLでデザイン部分を切り離してたのを思い出して、今回の調査の運びとなりました。 fyne-io/fyne Cross platform native GUIs designed for Go based on Material Design. Supports: Linux, macOS, Windows, BSD, iOS and Android. walkと比べると、クロスプラットフォームで作成できるのですが、こちらもコードの中にデザインを書いていく形でした。 therecipe/qt therecipe/qt allows you to write Qt applications entirely in Go or JavaScript. Qt Creatorなるものがあるようで、デザイン部分を切り離せる印象はあるものの、最新のPCでもビルドに時間がかかるようで、学習コストもかかるという記事を見かけて断念しました。 どうしたものかとツイートしましたら、下記のようにご助言をいただいた。 同じ課題に対し色々試した結果、PWAのフルキャッシュドに落ち着いた。中身はGo+WASMで。 https://t.co/e60whDTV16 — のぼのぼ📡 (@nobonobo) July 21, 2020 PWA 早速調べてみました。Googleが進めているプロジェクトで、ネイティブアプリのよ

Eclipseの高速化メモ

Eclipseが重いと一言に言っても、いろいろな工程での話があると思いますが、過去記事のなども含めてこの記事にピックアップしておきたいと思います。以下はWindows環境での話です。