Manual:Backing up a wiki/ja

From MediaWiki.org

Jump to: navigation, search

すべてのシステムにおいて、あなたのwiki中のデータの通常のバックアップを行なうことはとても重要である。このページは一般的なMediaWiki wikiのためのバックアップ手順の概要を提供する;おそらく、あなたの固有のバックアップスクリプトかスケジュールをwikiのサイズに適合するようにと、固有の要求のために修正したくなるだろう。

Contents

[edit] 概要

MediaWikiは重要なデータを二カ所に保存する:

データベース
ページとその内容、利用者とそのオプション、メタデータ、検索の索引など。
ファイルシステム
ソフトウェア構成ファイル、カスタムスキン、拡張、画像(削除されたものを含む)など。

[edit] データベース

ほとんどのwiki中のデータはデータベースに格納され、それは、通常バックアップが簡単である。MySQLバックエンドを使っているとき(規定値)、いろいろなユーティリティがデータベースをファイルに"ダンプする"ことの支援に使え、すなわち、データベースを再構成するために使えるスクリプトファイルを生成し、もしも必要ならば、スクラッチからすべてのデータをその中に入れる。

例を挙げると、MySQL ダンプツールは、バックアップ対象のデータベースの名前を与えられるダンプファイルを作成することができるコマンドラインアプリケーションである。動作は、たとえば文字エンコーディングを設定する、出力ファイルフォーマットをカスタマイズする標準パラメータを使って変更できる。

そのほかにもツールがあり、それは(商用) MySQL hot backup utilityで、動作中にInnoDBテーブルをバックアップ出来、著名なサードパーティオープンソースである phpMyAdmin ツールは、データベースのエクスポート(ダンプ)のための数多くのオプションを含む、MySQLデータベースと広く会話する機能を含むwebベースのアプリケーションである。

crontabで実行できるコマンドの例は以下の通り:

/usr/bin/nice -n 19 /usr/bin/mysqldump -u $USER -p$PASSWORD $DATABASE -c | /usr/bin/nice -n 19 /bin/gzip -9 > ~/backup/wiki-$DATABASE-$(date '+%a').sql.gz


$USER、$PASSWORD、$DATABASEには有効な値を使うこと。これは、ファイル名中に平日の名前を含むバックアップファイルを書き込むことが出来、一連のバックアップを持つことが出来る。もしも、同様にファイルと拡張を保存したいならば、これを使ってもよい。

[edit] 文字セット

MySQL4.1以降に対する警告: いくつかの共通構成中で、mysqldump はMediaWikiが格納するテキストを破壊する可能性がある。もしもデータベースの文字セットが"latin1"の代わりに"UTF-8"に設定されていたならば、MySQL 4.1以降のmysqldumpは、"smart quates"のような句読点と、英文のテキスト中で使われる長いダッシュと同様、非英文字を含むテキストを壊す可能性がある、文字セット変換ステップを適用するだろう。

SHOW CREATE TABLE textのような文を使うことで、テーブルがどのような文字を使っているかを見ることが出来る。最後の行はDEFAULT CHARSET 節を含むだろう。

"latin1"に設定されている場合は、mysqldumpコマンド行上で、--default-character-set=latin1オプションを使い、変換を防止する。

例は以下の通り:

/usr/bin/nice -n 19 /usr/bin/mysqldump -u $USER -p$PASSWORD --default-character-set=$CHARSET $DATABASE -c | /usr/bin/nice -n 19 /bin/gzip -9 > ~/backup/wiki-sql-$(date '+%a').sql.gz

[edit] ファイルシステム

MediaWikiは、データベース中に挿入するよりもより適当である、wiki中のその他のコンポーネントをファイルシステム中に格納し、たとえば、それは、サイトの構成ファイル、(LocalSettings.phpAdminSettings.php)、画像ファイル(削除イメージ、サムネイル、もしも使えるようになっていれば、レンダリングされた数式、SVGイメージも含む)、スキンのカスタマイゼーション、拡張ファイルなどである。

それらのバックアップを取るもっともよい方法は、それをアーカイブファイルに置くことでそれはたとえば、もしも指定すれば圧縮される.tar ファイルである。Windowsでは、もしも使えればそれはWinZipのようなアプリケーションである。

[edit] キャッシュのパージ

キャッシュのパージをする必要があるかもしれない。特に、マイグレーションプロセス中で何らかの設定変更を行なったときは。キャッシュに関するコンフィギュレーションを参照。

[edit] XML ダンプ

データベースダンプに追加するXMLダンプを生成することはよいアイデアである。XMLダンプには、サイトに関連するデータを除く(利用者アカウント、ログなどを含まない)、wikiの内容(すべてのリビジョンを含むwikiページ)を含む。XMLダンプはデータベース構造から独立しているので、MediaWikiの将来の(およびたぶん過去も)バージョンにインポートすることが出来る。

これは、文字エンコーディング問題をより引き起こしにくく、サードパーティのツールによって容易に処理することが出来、メインのデータベースダンプが使えなくなる時によい代替手段になり、まとめて内容を再配布する手段となる。

XMLダンプを生成するために、dumpBackup.phpコマンドラインツールを使い、MediaWikiをインストールした所の、メンテナンスディレクトリに置く。Special:Exportを使うことで、オンラインの特定のページセットのためのXMLダンプを生成するためにも使用でき、そうすることで、このインタフェースを使うと通常タイムアウトになる大量のページのダンプを試みる代わりになる。

wikiにXMLダンプをインポートするためには、コマンドラインツールimportDump.phpを使う。ページ数が少ないときには、ブラウザ経由でSpecial:Import ページを使うことも出来る(規定値では、これはsysop グループのみに制限されている)。

より速いdumpBackup.phpimportDump.phpの代替として、MWDumperを使うことも出来るが、Javaが必要である。

Personal tools