Extension:Backup & Restore

NOTE: This extension is still under development and not ready for use yet.

Overview
One of the problems we've had over the last few years with backups is that extracting information out of them is difficult, and usually involves having to manually set up a new wiki and configure it's LocalSettings to access the old database. This extension is the combination of our previous bot-based backup script and a new backup restoring solution.

When restoring from a backup the specifics of the wiki such as database name, table-prefix and domain name can be configured first so that the newly unpacked wiki won't conflict with any existing ones.

These features make quite a good overall wiki family tool even though it's main reason for development is for looking after the backups.

Usage
All initiating of backup-related jobs is done from the Backup special-page which display a list of all wikis in the database and all backup files and allows editing of any changeable fields in the lists. Once changes have been made, the "Next" button is clicked which produces a list of all the jobs required to make the selected changes happen. At this point clicking "Queue" will add the jobs to the queue.

The job queue in this case is not the MediaWiki job queue, but another queue specific to this extension, which the Backup.pl script processes each time it runs from its regular schedule.

Installation
The source consists of two files which need to be downloaded:
 * OrganicDesign:Extension:Backup.php
 * Backup.pl

Backup.pl is a Perl script which does the actual work. If using a Windows server you can get Perl from www.activeperl.org and add the execution to you system scheduler from control panel. On Linux you'll already have Perl and you can add the script to your crontab with a line similar to the following to call the script every hour. 0 * * * * /var/www/wiki/extensions/Backup/Backup.pl

Configuration

 * location of backups

Articles and extensions related to managing multiple wikis

 * MW:Extension:Farmer - uses wildcard DNS so no apache integration required
 * MW:Manual:Wiki family ''- lots of info regarding various ways of setting up multiple wikis on one server
 * Steve Rumberg - another bunch of good info on the subject