Moodleのバックアップとリストア
特定のコースのバックアップとリストアについてはMoodleの解説書(「Moodle入門」)やオンラインドキュメント等を参考にして下さい.ここではインストールしたXAMPP版MoodleをApacheやMySQLのシステム含めてバックアップするための情報をまとめています.
(1)一番安全なのは丸ごとバックアップ ハードディスクの空き容量に余裕があるのであれば,定期的に,
C:\xampplite
フォルダを丸ごとバックアップして下さい.MoodleのアップデートやApache/MySQL/PHPの設定を変更した結果,不具合が生じた場合には,現在のC:\xamppliteフォルダを削除(不安ならばこのフォルダをまた別にバックアップした後で.)し,バックアップしてあったxamppliteフォルダをC:\にコピーすればOKです.ただし,ApacheとMySQLが動作している状態では,C:\xamppliteフォルダを削除することができません.XAMPP Control Panel Applicationなどを用いて,現在動作しているApacheとMySQLを停止(Stop)して下さい.
なお,MySQLの設定ファイル(my.ini)だけはWindowsフォルダ(C:\WINDOWSあるいはC:\WINNT)中にありますので,C:\WINDOWS\my.iniだけは別にバックアップして下さい.
(2)最も重要なMoodleのデータのみのバックアップ Moodle上に構築したコースデータ,アップロードしたコースファイル,ユーザのアカウント情報などは,以下の2つのフォルダに格納されています.もし,Moodleが安定稼動していてシステムの設定をほとんど変えることが無いのであれば,Moodleのデータのみをバックアップすれば良いでしょう.
- C:\xampplite\moodledata
- C:\xampplite\mysql\data
C:\xampplite\moodledataには,アップロードしたファイル,フォーラムに添付したファイル,課題で提出したファイル,Wikiのバイナリファイル(アップロードした画像ファイルや添付ファイル)が格納されています.
C:\xampplite\mysql\dataには,MySQLで管理しているMoodleの全てのデータが格納されています.フォーラムへの書き込み,Wikiのデータ,ユーザのアカウント情報などです.
(定期バックアップの例) 例えば,(1)の全バックアップはMoodleのアップデートを行うなどの大きな変化のあったとき,あるいは1ヶ月に1回程度の定期バックアップを行い,(2)のMoodleのデータのバックアップは毎日1回,定期バックアップを行う,といった運用方法が考えられます.
(コースデータのバックアップ) Moodleは,きちんと設定を行っていれば,定期的に全コースのデータのバックアップを行っています.バックアップしたコースのデータは,各コースのデータフォルダの中の
backupdataというフォルダ内に格納されています.例えば毎週1回バックアップを行い,それを過去5週分だけ保存して,古いバックアップは自動的に削除する,といった設定が行えます.なお,バックアップしたデータはZIP書庫の形式で保存されています.このZIP書庫を手元のアーカイバソフトウェアで展開してコピーしてもコースの復旧はできません.Moodle上のリストア機能を利用してZIP書庫をリストアする必要があります.
例えばこのコースのバックアップデータを見てみましょう.まずコースに移動します.
管理メニューにある
ファイルをクリックして下さい.
このコースのコースファイルの一覧が表示されます.
backupdataと
moddata以外はユーザが作成したフォルダです.
backupdataをクリックして
backupdataフォルダを開きます.
以下のように,backup-(コースの短縮名)-(日付)-(時刻).zipの形式のファイル名のファイルが5個存在します.これがコースのバックアップファイルです.
ファイルリストの右の方にある
リスト(
リストアではありません!)をクリックすると,ZIP書庫の中身の一覧表を表示できます.
modata(module data)以下のデータはコースファイルのファイルリストにあった
moddataフォルダ以下のファイルをフォルダ構造を保ったままZIP書庫に格納したものです.
moodle.xmlはMySQLで管理している本コースの全てのデータをデータベースから読み出してXMLデータ形式で一つにまとめたデータです.この
moodle.xml中の各データを手動でMySQLに書き戻すことはできないため,リストア機能を使用する必要があるのです.
次は,コースバックアップの設定方法です.サイトのトップページ(フロントページ)へ戻って下さい.
サイト管理メニューの中の
コースをクリックし,開いたツリーリストの中の
バックアップをクリックして下さい.
右側のフレームに表示されたバックアップの設定の画面の下の方に,全コースの定期バックアップに関する設定があります.
保存は削除しないで残しておく過去のバックアップファイルの数です.
スケジュールと
バックアップ処理開始時刻の二つで,いつcron.phpにバックアップ処理を行わせるのかを指定します.
(注意)この設定日時を過ぎた後にcron.phpが実行された時にバックアップが行われます.つまり,
cron.phpの自動実行でcron.phpの自動実行を設定していなくても指定したタイミングでcron.phpを自動実行してくれるという意味ではありません.