«
»

MediaWiki Upgrade Procedure

September 5th, 2006 by George Notaras

I use MediaWiki as a personal note-taking, documentation and code snippet storage system. This was started as an experiment, but a wiki proved to be a decent solution for the above tasks. This is a small checklist, mainly for my own reference, to follow when upgrading MediaWiki.

Dump the wiki database

This is done so to be sure that our wiki data is safe in case anything goes wrong (very unlikely):

mysqldump -u mymysqluser -p --opt --databases mywikidb > mywikidb.sql

Or if your database is too big, you can pipe it to gzip before dumping to file:

mysqldump -u mymysqluser -p --opt --databases mywikidb | gzip -9 > mywikidb.sql.gz
How to restore the database

Just in case anything goes wrong with the upgrade procedure and you need to restore the backed up database, all you have to do is:

mysql -u mymysqluser -p mywikidb < mywikidb.sql

Backup the wiki files

Take a copy of the wiki files and directories:

cp -a wikidir wikidir.BAK

Delete old wiki files

Delete the old files and directories except:

  1. the extensions/ directory (if there are any extensions installed)
  2. the images/ directory (if there are uploaded images)
  3. the .htaccess file
  4. the AdminSettings.php file
  5. the LocalSettings.php file

Upload the new wiki files

Move the new wiki files to the the wiki directory and set proper permissions:

chmod -R u=rwX,g=-,o=rX wikidir/

Note that you might need to further protect AdminSettings.php, LocalSettings.php and any other file that contains sensitive information, by restricting access to it with proper rules inside the .htaccess file. For example:

<files ~ "^.+Settings\.php">
    Order allow,deny
    Deny from all
</files>

Upgrade the wiki database tables

Change to the maintenance/ directory and run:

php update.php

Also, it is recommended to refresh the links between the various articles inside the wiki. To do this run the refreshLinks.php script:

php refreshLinks.php

Delete the config/ directory

The config/ directory is not needed so you might want to completely delete it or restrict access to it.

Apply any code modifications

Finally, apply any custom changes to the wiki code.

The MediaWiki Upgrade Procedure by George Notaras, unless otherwise expressly stated, is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.

Tags: , , ,

3 Responses to “MediaWiki Upgrade Procedure”

  1. Peter Poortinga Says :

    Problems running the update.php

    I am also hosting the mediawiki files on godaddy. I am trying to upgrade from 1.5 to 1.7 and am having no luck. I backed up my database, and all the wikimedia files. Then I replace all the old files with the new ones using an ftp program. The last step says to run the update.php using a command line. I am not sure what this means. Opening the command prompt on my windows machine will do nothing obviosly since the program is hosted not on my computer, but on godaddy. I have tried entering RAW commands using my FTP program to no avail. so, How do I run the update.php file located on the server? Thanks!

    A different provider, but I have the same challenge. Why is it not possible to run this update script from the godfather-role?

  2. GNot Says :

    The above way of upgrading assumes that the hosting service provides shell access (most probably through SSH) to your account and, furthermore, access to the php interpreter from the command line. It seems that this is not possible in your case.

    There are alternative ways of upgrading, which cover your situation, but please look for them in the official Mediawiki documentation.

  3. Marc Says :

    Thanks for this, it was exactly what I’ve been looking for.

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre>