MediaWikiのバックアップ
2015年10月17日 (土) 20:42時点におけるimported>Webmasterによる版
- せっかく作った自分のサイトもどういうタイミングで消失するか分かりませんので、MediaWikiのバックアップ方法について説明したいと思います
- [本家のサイト]を参照しながら、説明したいと思います
- 本家にあるように、Mediawikiは2つの大きな情報を持っています
- データベース
- ファイルシステム
- この2つがあるために、単純にサイトのファイルを全部持ってきてもファイルシステムはバックアップできますが、データベース側のバックアップが取れないので、2つの大きな情報をバックアップする必要があります
目次
データベースのバックアップ
2種類のデータベースのバックアップ
- ここではデータベースのバックアップを説明します。パスワードやサーバ名など個々人で異なりますが、ここではMediaWikiのインストール方法#データベースの設定で設定した内容を基準にバックアップの内容を記載して行きます
- データベースのバックアップ方法にも2通りあります。メリット/デメリットの両方がありますが簡単に分けると上級者向けがmysqldumpを使用したバックアップ、初心者向けがdumpBackup.phpを使用したバックアップと考えても良いかもしれません
- 個人的には転ばぬ先の杖ではありませんが、両方でバックアップを取っておいて万が一に用意した方が賢明かもしれません
- mysqldumpを使用したバックアップ
- dumpBackup.phpを使用したバックアップ
mysqldumpを使用したバックアップ
- mysqldumpとはMySQLのデータベースのコマンド(mysqldump)を利用してデータベース内の全てのデータをバックアップすることです
- メリットとしてはデータベース内の全てのデータをバックアップするため、利用者の情報やページの統計情報など全てがバックアップされます
- デメリットとしてバックアップとリストア時のmediawikiやMySQLのバージョンが異なっていたり、キャラクターセットが間違っていたりするとリストアが出来なくなったり、文字化けすることがあります
dumpBackup.phpを使用したバックアップ
- mediawikiのメンテナンスツールを使用したバックアップ方法で有りXMLダンプとも言います
- メリットとしてはバックアップとリストア時のmediawikiやMySQLのバージョンが異なっていたりしていてもリストア可能です
- デメリットとしてサイトに関連する利用者情報、ログ等は含まれず、バックアップはwikiの内容だけ限定されます
mysqldumpを使用したバックアップ方法
- 以下のコマンドを実行することで
mysqldump -Q --host=mysql999.db.sakura.ne.jp --user=username --password=setuzoku_pass --default-character-set=utf8 --hex-blob username_wikidata > backup.sql
- これでbackup.sqlという名前でバックアップが取れます
ファイルシステムのバックアップ
- LocalSettings.phpをバックアップします
- 画像(./images)を圧縮形式でバックアップします
tar -zvcf wiki-images-backup.tar.gz /home/username/www/images
- CSSとか(./skins)を圧縮形式でバックアップします
tar -zvcf wiki-skins-backup.tar.gz /home/username/www/skins
- 拡張機能(./extensions)を圧縮形式でバックアップします
tar -zvcf wiki-extensions-backup.tar.gz /home/username/www/extensions
- 設定ファイル(./config)を圧縮形式でバックアップします
tar -zvcf wiki-config-backup.tar.gz /home/username/www//config
- とりあえずこれぐらいバックアップしておけばリストアできると思います
dumpBackup.phpを使用したバックアップ方法
- 以下のコマンドを実行することでXMLダンプが取得できる
php maintenance/dumpBackup.php --full > backup.xml