movabletype.jp
検索
[ Movable Type 4 ドキュメント ]

ブログの完全バックアップと、データベースのバックアップ

ホスティング・サーバーの事業者は、サーバーのバックアップを行っていますが、利用者が自由には使えないのが一般的です。Movable Typeの環境を定期的にバックアップすることで、不慮の事態からの復旧を早めることができます。

Movable Type環境のバックアップには、次のものがあります。

システムメニューのバックアップ・ツールを利用

Movable Typeで管理している、ブログ記事、ウェブページ、コメント、トラックバック、ブログにアップロードした画像、テンプレートなどをまとめてバックアップすることができます。ZIP形式への圧縮、サイズの大きい場合は、複数ファイルへの分割も可能です。複数のブログをまとめてバックアップすることもできます。

  1. 操作メニュー (システム・モード) 』で、『ツール』から『バックアップ』を選択
  2. バックアップするブログを選択
  3. 圧縮フォーマット、出力ファイルのサイズ (分割) を選択
  4. 『バックアップを作成』をクリック
  5. バックアップ・ファイルが作成され、自動的にダウンロードが始まります
  6. ダウンロードしたファイルを、ハードディスクやバックアップ・メディアなどに保存してください

バックアップから復元するには、『バックアップしたブログの復元』を参照してください。

バックアップファイルは、必ずバックアップを行った Movable Type と同じ環境で復元してください。例えば、Movable Type 4.1 の環境で、バックアップしたファイルを Movable Type 4.2 で復元したいとき、まず、Movable Type 4.1 で (緊急時用) バックアップを作成後、その Movable Type を Movanle Type 4.2 にアップグレードし、再度バックアップファイルを作成します。その Movable Type 4.2 の環境で作成したバックアップファイルを使用して、復元したい Movable Type 4.2 の環境で復元します。

system-backup.png
system-backup-selectblog.png

バックアップするブログを選択

バックアップを行うブログを選択します。初期値はすべてとなり、システムで管理しているすべてのブログのバックアップファイルを作成します。

圧縮フォーマット

バックアップするデータが大きくなる事が予想される場合、バックアップデータを圧縮してダウンロードすることができます。この機能を利用するには以下の Perl モジュールが必要です。

  • Archive::Tar
  • Archive::Zip
  • IO::Compress::Gzip
  • IO::Uncompress::Gunzip

出力ファイルのサイズ

バックアップするデータが大きくなることが予想される場合、バックアップファイルを設定サイズごとに分割してダウンロードすることができます。

データベースのバックアップ

MySQLやPostgreSQLを利用している場合、ホスティング・サーバーの事業者が提供するバックアップの方法、もしくはシェルを利用してデータベースのバックアップを作成することができます。ただし、データベースにはアップロードした画像ファイルなどは含まれませんので、完全なバックアップには、上記のバックアップツールの利用を推奨します。

MySQLの場合

MySQLデータベースのバックアップは、mysqldumpコマンドを実行して行います。次のように実行すると、FILENAME.mysqlというバックアップ・ファイルが作成されます。

C:¥> mysqldump -a  --user=USERNAME --password=PASSWORD DATABASE > FILENAME.mysql

PostgreSQLの場合

PostgreSQLデータベースのバックアップは、pg_dumpコマンドを実行して行います。次のように実行すると、FILENAME.pgというバックアップ・ファイルが作成されます。

C:¥> pg_dump --username=USERNAME DATABASE > FILENAME.pg

データベースのリストア

データベースのバックアップを利用し、データベースを復旧する場合、ホスティング・サーバーの事業者が提供する復旧の方法、もしくはシェルを利用して復旧します。

MySQLの場合

MySQLデータベースの復旧は、次のようにmysqlコマンドを実行します。

C:¥> mysql  --user=USERNAME --password=PASSWORD < FILENAME.mysql

PostgreSQLの場合

PostgreSQLデータベースの復旧は、次のようにpsqlコマンドを実行します。

C:¥> psql DATABASE < FILENAME.pg