Enabling search suggestions

Das automatische Anzeigen von Treffern in Seitentiteln während der Eingabe eines Suchbegriffs wird mit folgender Option in LocalSettings.php aktiviert:

$wgEnableMWSuggest = true;

Normalerweise werden nur Seiten angezeigt, deren Name mit dem Suchbegriff beginnen. Dies lässt sich ändern, indem in der Datei include/api/ApiQueryAllpages.php, in der Funktion run die Zeile

$this->addWhere( 'page_title' . $db->buildLike(\
    $this->titlePartToKey( $params['prefix'] ), $db->anyString() ) );

durch nachfolgende Zeile ersetzt wird:

$this->addWhere( 'LOWER(page_title)' . $db->buildLike(\
    $db->anyString(),\
    strtolower($this->titlePartToKey( $params['prefix'] )),\
    $db->anyString() ) );

Creating a local backup of a wiki

Preparations

Falls man nicht die einzige Person ist, die das Wiki nutzt, sollte man das Bearbeiten von Artikeln und das Hochladen von Dateien für die Zeitdauer des Backups deaktivieren.

Backup of files

Das eigentliche Wiki (Code, Konfigurationsdateien, hochgeladene Dateien etc.), welches sich auf dieser Seite beispielsweise im Verzeichnis /wiki befindet, wird gesichert, indem dieses Verzeichnis einfach per FTP in ein vom lokalen Webserver lesbares Verzeichnis kopiert wird.

Backup of the database

Zunächst muss lokal eine neue Datenbank angelegt werden. Dies könnte beispielsweise so aussehen:

mysql> CREATE DATABASE wikibackup;
mysql> GRANT ALL PRIVILEGES ON wikibackup.* TO '[Nutzer]'@'localhost' \
    IDENTIFIED BY '[Passwort]';
mysql> GRANT ALL PRIVILEGES ON wikibackup.* TO '[Nutzer]'@'%' 
    IDENTIFIED BY '[Passwort]';

Anschliessend wird ein Dump der Datenbank vom Server des Webhosters erstellt:

mysqldump --opt --compatible=mysql40 -h [Server] -u [entfernter Nutzer]\
    -p[entferntes Passwort] [Datenbank] |
    mysql -u [lokaler Nutzer] -p[lokales Passwort] -C wikibackup

Finalization

Zum Schluss muss noch die Datei LocalSettings.php an die neuen Bedingungen (Pfad zum Wiki, Datenbankserver, -name, -nutzer und -passwort) angepasst werden.

Upgrading a MediaWiki instance

Upgrade procedure

Das Update einer MediaWiki-Installation auf die neueste Version ist in relativ wenigen Schritten erledigt.

  1. read the upgrade instructions
  2. create a full backup of the wiki
  3. download and extract the latest MediaWiki version
  4. die Datei LocalSettings.php (im Wiki-Rootverzeichnis) umbenennen
  5. alle neuen Dateien in das Wiki-Rootverzeichnis kopieren und vorhandene Dateien dabei überschreiben
  6. sicherstellen, dass der Webserver Schreibrecht für das Unterverzeichnis config hat
  7. die URL des Wikis aufrufen und auf der Konfigurationsseite exakt die gleichen Werte wie bei der Erst-Installation des Wikis eintragen
  8. die Installation starten; die Datenbanktabellen werden aktualisiert
  9. das config-Verzeichnis löschen
  10. die alte LocalSettings.php wieder herstellen
  11. die URL des Wikis aufrufen und testen, ob alles funktioniert (auch die Extensions prüfen)

Troubleshooting

The following issues can happen when upgrading from MediaWiki 1.7.1 to 1.11.2.

Database upgrade fails

Symptoms:

Solution: in maintenance/tables.sql and maintenance/archives/patch-job.sql replace

KEY (job_cmd, job_namespace, job_title)

with

KEY (job_cmd(160), job_namespace, job_title(160))

Thumbnails no longer generated

Sehr wahrscheinlich ist die Version von ImageMagick veraltet (benötigt wird mindestens 6.0). Also muss entweder ImageMagick aktualisiert werden oder man nutzt statt dessen die gd-Bibliothek - hierzu muss in LocalSettings.php die Zeile

$wgUseImageMagick = false;

eingetragen werden.

ArticleComments extension stops working

Die zum Zeitpunkt des Updates aktuelle Version (0.4.1) der Erweiterung ist nicht kompatibel mit MediaWiki > 1.11. Mit einem faulen Trick lässt sie sich aber dennoch zum Laufen bringen: hinter dem Block

$skipCheck = {...}

muss die Zeile

$skipCheck = true;

eingefügt werden.