Handleiding:Upgraden

This page is a translated version of the page Manual:Upgrading and the translation is 100% complete.

Basisoverzicht

Bestandoverdracht

Kies een methode om de bestanden op te halen:

Voorafgaand

Lees het toegevoegde bestand UPGRADE.

  1. Controleer de vereisten
  2. Lees het bestand RELEASE-NOTES
  3. Lees het bestand UPGRADE
  4. Maak een reservekopie van alle bestanden en de database.
  5. Pak de nieuwe bestanden uit
  6. Upgrade extensies
  7. Run het update-script om de database te controleren
  8. Test de update
  9. Resten van oude installaties verwijderen

Controleer vereisten

  Waarschuwing: De versies vanaf 1.32 tot 1.35.4, 1.36.2, 1.37.0 bevatten een beveiligingsprobleem waardoor het mogelijk was om zonder toestemming willekeurige pagina's te bewerken en JavaScript uit te voeren. Als u een van deze versies gebruikt dan raden wij aan om te upgraden. Indien dat niet mogelijk is, lees dan 2021-12 veiligheid release/FAQ voor een tijdelijke oplossing.
  Waarschuwing: Upgrade niet van een MediaWiki-versie ouder dan 1.33 naar MediaWiki 1.39.1, anders kunt u gegevens verliezen! Upgrade eerst naar MediaWiki 1.35 . Zie taak T326071.

MediaWiki 1.42 vereist:

  • PHP 8.1.0+
  • Een van de volgende:
    • MariaDB 10.3.0+
    • MySQL 5.7.0+
    • PostgreSQL 10.0+
    • SQLite 3.8.0+
Vanaf versie 1.36 ondersteunt MediaWiki alleen de twee meest recente grote lange-termijn-onderteuning releases (LTS) (zie phab:T259771). Upgrades van oudere versies zullen in meerdere stappen gedaan moeten worden. Dit betekent dat als u wilt upgraden naar 1.42 van 1.34 of eerder, u eerst uw wiki van 1.34 moet upgraden naar 1.35 (of 1.39) en van 1.35 (of 1.39) kunt u upgraden naar 1.42.

Wanneer u PostgreSQL gebruikt, lees alstublieft ook Manual:Upgrading Postgres .

Voor meer informatie, lees alstublieft de Handleiding:Installatievereisten en Compatibiliteit .

Lees de release notes

In de tarball distributie of in de bestanden opgehaald uit Git, zitten een aantal bestanden met bestandsnamen in hoofdletters, een daarvan bevat de RELEASE-NOTES (wiki). Nu is het tijd om dat bestand te openen en te kijken wat er in deze release is gewijzigd. Lees ook de instructies in het bestand UPGRADE.

Lopende jobs wissen

Vanwege de performance worden acties in de database soms uitgesteld, dit wordt in een job queue (wachtrij) beheert. Deze jobs worden opgeslagen in de database en bevatten parameters met informatie over de acties die uitgevoerd moeten worden. Wij bevelen aan dat u deze nog uit te voeren jobs nu uitvoert voordat u de wiki gaat upgraden, dit om te voorkomen dat de parameterinformatie van een job in de nieuwe versie anders is. Gebruik runJobs.php om al deze pending jobs uit te voeren en de wachtrij te legen voor het doen van de upgrade.

Een reservekopie maken van bestaande bestanden en de database

Volledige instructies: Handleiding:Back-up maken van een wiki

Hoewel de scripts om te upgraden robuust en goed onderhouden zijn, kan er natuurlijk altijd iets mis gaan. Maak daarom voor een upgrade van de database altijd een complete backup van de wiki, dus zowel de database als de bestanden:

  • De inhoud van de wiki, van de database, (zorg dat de character set goed is aangegeven, controleer eerst LocalSettings.php). Misschien is het een goed idee om een XML-dump aan te maken als aanvulling op de SQL-database dump.
  • MySQL, de SQL-dump en de XML-dump voor gebruik met het commando mysql :
mysqldump --user=wikidb_user --password=wikidb_userpassword wikidb > file.sql
mysqldump --user=wikidb_user --password=wikidb_userpassword wikidb --xml > file.xml
  • PostgreSQL, database dump voor gebruik met het commando pg_restore :
pg_dump --create -Fc wikidb > file.db.dump
  • SQLite, u gebruikt een MediaWiki-script voor het maken van een back-up:
php wikifolder/maintenance/sqlite.php --backup-to file
  • afbeeldingen en andere media-bestanden (de inhoud van de map images, aangepast logo /skins/common/images/wiki.png)
  • configuratie-bestanden, bijv. LocalSettings.php en .htaccess (indien aanwezig)
  • MediaWiki's programma bestanden, inclusief alle skins en extensies, zeker als u ze heeft gewijzigd.

De nieuwe bestanden uitpakken

Een tarball package gebruiken

U kunt de nieuwe bestanden plaatsen met behulp van FTP of de commando-regel. (Als u daar toegang tot heeft.) Met de commando-regel gaat het het snelst, want het zijn duizenden bestanden die anders met FTP geladen moeten worden.

Plaats de uitgepakte tarball in een nieuwe en lege map op uw server. Als u uw nieuwe versie uitpakt over een oudere versie heen, volg dan de instructies aangegeven in bestaande bestanden en database back-uppen: in het andere geval, als uw aanpassingen heeft gedaan dan zult u deze overschrijven als u dezelfde map gebruikt, u bent dan uw wijzigingen kwijt. Het uitpakken van een tarball over een MediaWiki heen kan resten van de oude versie achterlaten die mogelijk de bijgewerkte code kan verstoren. Daarom bevelen wij aan dat u het uitpakt in een lege map en dan daarna aanpassingen aanbrengt op de nieuwe inhoud (uw wijzigingen in LocalSettings.php, map images, extensies en overige wijzigingen zoals bijvoorbeeld aangepaste skins)

FTP of grafisch

Als u de commando-regel op uw server niet kunt benaderen, download dan de MediaWiki tarball naar uw eigen computer en gebruik 7zip om daar de tarball uit te pakken.

Na het lokaal uitpakken van de bestanden, gebruik uw favoriete FTP programma om het up te loaden naar de server.

cPanel Bestandsbeheer

cPanel is een populaire interface die door veel webhosts ter beschikking wordt gesteld. Deze methode is efficiënt omdat de bestanden op de server worden uitgepakt.

  • Ga naar de map waar uw wiki map staat.
  • Upload het bestand mediawiki-1.xx.x.tar.gz. Mogelijk moet het even verversen om het bestand te zien.
  • Pak het bestand mediawiki-1.xx.x.tar.gz uit. Opnieuw laden.
  • Controleer of de map mediawiki-1.xx.x aanwezig is.
  • Verwijder het bestand tar.gz.
  • Kopieer alle benodigde skins, extensies, mappen met afbeeldingen, aanpassingen en de LocalSettings.php in de nieuwe map. (Zie onder.)
  • Als u klaar bent om update.php uit voeren, hernoem dan uw oude en nieuwe wiki mappen. (bijv: "w" wordt "w1.34" en dan "mediawiki1.35.0" wordt "w".) Zo kunt u, met de source, eenvoudig terug bij problemen.

Opdrachtprompt

Mogelijk moet u het commando als sudo uitvoeren als u niet volledige schrijfrechten heeft op de wiki installatie mappen. Bij het uitpakken van een tarball package wordt er normaal gesproken een nieuwe map voor de nieuw wiki versie aangemaakt en dient u oude configuratie-bestanden en mappen met afbeeldingen uit uw oude installatie map over te zetten:

cd /path/to/your/new/installation/ wget https://releases.wikimedia.org/mediawiki/1.42/mediawiki-1.42.3.tar.gz tar xvzf mediawiki-1.42.3.tar.gz rm mediawiki-1.42.3.tar.gz

(Open)Solaris gebruikers moeten gtar gebruiken, of:

$ gzip -dc mediawiki-1.42.3.tar.gz | tar xf -

Andere bestanden

Na het uitpakken van de tarball, dient u enkele mappen en bestanden uit de oude installatie te kopiëren of te verplaatsen naar de nieuwe installatie:

  • LocalSettings.php - bevat uw oude configuratie-instellingen.
  • De map images (in oudere versies uploads), deze map bevat alle in de wiki geüploade bestanden, tenzij u hiervoor een andere map heeft ingesteld, wijzig de eigenaar en de rechten. find ./images -type d -exec chmod 755 {} \; en chgrp -R apache images (bijvoorbeeld als u web-user apache is).
  • Enkele extensies in de map extensions. U dient altijd bijgewerkte extensies te krijgen; er is geen garantie dat oudere versies van extensies werken op de nieuwere versie van MediaWiki.
  • Als u een eigen logo gebruikt, dan moet dit bestand ook worden teruggezet uit de oude installatie. Voor versie 1.24 staat het logo meestal in skins/common/images/. Daarna meestal in resources/assets/ of images/, daar wat u besloten heeft. Voeg het toe aan LocalSettings.php bijv. $wgLogo = "$wgScriptPath/images/logo.png";
  • Voor 1.35 moet u mogelijk de logo's terugzetten uit wgLogos . Voeg dan aan LocalSettings.php toe bijv. $wgLogos = [ '1x' => "path/to/1x_version.png", '2x' => "path/to/2x_version.png", 'svg' => "path/to/svg_version.svg" ];
  • Aangepaste skins vanuit de map skins.
  • Alle aanpassingen gedaan aan de oude installatie-bestanden of extensies.
  • Elk htaccess bestand (als u Apache gebruikt en in dat bestand regels heeft aangemaakt).

Als u klaar bent, maak dan deze nieuwe map de gepubliceerde map op de webserver, of wijzig de namen van de oude en nieuwe installatie mappen zo dat de nieuwe map de oorspronkelijke naam van de oude map heeft. Wijzig de eigenaar en de groep van alles zodat de webserver toegang heeft tot de bestanden.

Met Git

Bij gebruik van Git , exporteer de bestanden naar een lege locatie en kopieer de oude aangepaste bestanden naar de nieuwe locatie zoals in het vorige gedeelte is aangegeven.

U dient ook enkele externe PHP libraries te installeren met Composer of een door een wiki-farm aangeleverde verzameling. Meer details over het installeren en updaten van externe libraries staat in de Git download documentatie.

Een patch gebruiken

Als het een beperkte upgrade (minor version) is, dan is er meestal een bestand beschikbaar voor deze 'patch'. U kunt dit bestand gebruiken. Download patch. Pak het patchbestand uit na het downloaden van de dumps site of volg de onderstaande aanwijzingen met wget. Patches zijn aanvullingen, u kunt geen versie overslaan.

  1. cd naar de MediaWiki hoofdmap (de map met LocalSettings.php).
  2. Download het patch-bestand en gunzip het.
  3. Gebruik patch -p1 --dry-run om te controleren wat de wijzigingen zijn (bijv., patch -p1 --dry-run -i mediawiki-x.xx.x.patch)
  4. Als het klopt, voer patch nog een keer uit, maar dan zonder --dry-run.
  5. Controleer uw Special:Version en u moet het nieuwe versie-nummer zien staan.

Overblijvende bestanden die foutmeldingen kunnen veroorzaken

Als u het uitpakken over de oude versie heen doet, dan kunnen enkele oude bestanden problemen veroorzaken in de nieuwe versie.

Extensies bijwerken

Er zijn extensies aangepast om met deze nieuwe versie van de MediaWiki te kunnen werken. Zorg ervoor dat u de meest recente versie van deze extensies gebruikt. Mogelijk moet u daarvoor handmatige wijzigingen aanbrengen op aangepaste extensies.

Verschillende tarballs bevatten subsets van extensies en hebben een versie-aanduiding die u helpt te kiezen welke versie tarball u nodig heeft bij uw eigen versie van de MediaWiki.

Extension Distributor werkt goed als u een een snapshot wil van de extensies die zullen werken met de versies van de MediaWiki die zij ondersteunen.

Als u veel extensies wilt downloaden dan kan dat vast het best via Git. Als u geen Git heeft maar wel veel extensies wilt upgraden, overweeg dan om mwExtUpgrader te gebruiken.

<span id="Adapt_your_LocalSettings.php">

LocalSettings.php bijwerken

Indien dezelfde LocalSettings.php van de oude versie wordt gebruikt, kan het zijn dat deze bijgewerkt moet worden aan hoe nieuwe versies er mee omgaan:

Skin registratie

MediaWiki-versie:
1.24

Vanaf MediaWiki 1.24 zijn gebundelde skins als Vector, Monobook, Modern en CologneBlue niet langer deel van de kern van MediaWiki, ze moeten geregistreerd worden in LocalSettings.php om ze te kunnen gebruiken, andere meldt MediaWiki dat u geen geïnstalleerde skin bezit.

Voeg daarom dit toe aan LocalSettings.php bij het upgraden van versies ouder dan 1.24 als u een van die genoemde skins beschikbaar wilt hebben:

wfLoadSkin( 'Vector' );
wfLoadSkin( 'MonoBook' );
wfLoadSkin( 'Modern' );
wfLoadSkin( 'CologneBlue' );

Andere skins kunnen nog niet aan het nieuwe skin registratie systeem zijn toegevoegd, lees de documentatie pagina van elk skin om te zien hoe u het moet registeren in het geval u een probleem heeft met het gebruik van die skin.

Extensie registratie

MediaWiki-versie:
1.25

Sinds MediaWiki 1.25 gebruiken extensies het extensie registratie systeem.

Daarom zal uw LocalSettings.php iets bevatten als:

require_once "$IP/extensions/Cite/Cite.php";
require_once "$IP/extensions/Gadgets/Gadgets.php";
require_once "$IP/extensions/ImageMap/ImageMap.php";
require_once "$IP/extensions/InputBox/InputBox.php";
require_once "$IP/extensions/Nuke/Nuke.php";
require_once "$IP/extensions/ParserFunctions/ParserFunctions.php";
require_once "$IP/extensions/Poem/Poem.php";
require_once "$IP/extensions/SyntaxHighlight_GeSHi/SyntaxHighlight_GeSHi.php";
require_once "$IP/extensions/WikiEditor/WikiEditor.php";

Dit kan worden gewijzigd naar:

wfLoadExtension( 'Cite' );
wfLoadExtension( 'Gadgets' );
wfLoadExtension( 'ImageMap' );
wfLoadExtension( 'InputBox' );
wfLoadExtension( 'Nuke' );
wfLoadExtension( 'ParserFunctions' );
wfLoadExtension( 'Poem' );
wfLoadExtension( 'SyntaxHighlight_GeSHi' );
wfLoadExtension( 'WikiEditor' );

Extensies worden aangepast om het nieuwe extensie registratie systeem te gebruiken. Extensies die niet aangepast zijn, moeten de oude manier van installeren volgen. Lees de installatie instructies op de pagina van de extensie voor meer informatie.

Verwijder regel DefaultSettings.php (indien noodzakelijk)

Oudere versies van MediaWiki genereren automatisch een regel in in LocalSettings.php die DefaultSettings.php aanroept. Vanaf versie 1.38 wordt deze regel afgeraden en werkt het niet bij veel extensies. De regel moet dan worden verwijderd.

Verwijder de regel:

require_once( "$IP/includes/DefaultSettings.php" );

Remove RenameUser from LocalSettings.php

If you are upgrading to 1.40 or above, Extension:RenameUser has been merged into core. If present, this line must be deleted from LocalSettings.php or the update will fail.

wfLoadExtension( 'Renameuser' );

Andere variabelen

Sommige variabele kunnen overbodig of verwijderd worden. Ze in LocalSettings.php laten staan heeft gewoonlijk geen effect. Nieuwe variabelen kunnen toegevoegd worden in nieuwere versies, of bestaande variabelen kunnen een ander type krijgen. Wij proberen om dezelfde standaarden voor ze te gebruiken, in geval van het wijzigen van het type proberen we compatibel te zijn met de oude versie. Wij bekijken in ieder geval de notities over de release om de wijzigingen te zien.

Het updatescript uitvoeren

U kunt de MediaWiki database op twee manieren upgraden: Of met de commando-regel of via de webbrowser. Als u toegang heeft tot de shell op uw server, dan bevelen wij upgraden vanaf de commando-regel aan, hierdoor wordt het onderbreken van de upgrade door een time-out of een verbindingsprobleem voorkomen.

Het script zal u ook melden als een van de voor MediaWiki benodigde PHP afhankelijkheden verouderd is.

Opdrachtprompt

Toegang tot de opdrachtregel van uw server of een SSH-shell of iets dergelijks. U kunt toegang krijgen tot de opdrachtregel door verbinding te maken met uw server via SSH. Huidige versies van alle belangrijke besturingssystemen (inclusief Windows 10 en 11) bevatten een command-line OpenSSH client standaard of als een installeerbare functie. Als de lokale pc waarop u werkt Microsoft Windows draait, wilt u misschien PuTTY installeren (of, als het 8.1 of ouder is, moet) installeren, dat een wizard-achtige interface (of een vergelijkbare hulpmiddel) heeft. Voer vanaf de opdrachtregel of de Shell het updatescript uit:

MediaWiki-versie:
1.40
$ php maintenance/run.php update.php
MediaWiki-versie:
1.39
$ php maintenance/update.php

Als u op een Linux server een fout krijgt, probeer dan hetzelfde commando als root (met het commando sudo). Notitie voor eenvoudige installaties op Windows (bijv. XAMPP ): Controleer eerst of uw webserver (bijv. Apache) en uw database-server (bijv. MySQL) uitgevoerd worden. Voer daarna update.php uit: rechtsklikken, kies openen met en blader naar PHP.exe. Het scherm van de commando-regel kan automatisch gesloten worden na het afronden van de upgrade.

MediaWiki zal het bestaande schema bekijken en het bijwerken met de nieuwe code, door o.a. tabellen en velden toe te voegen als dat nodig is.

Als u een gedeelde database gebruikt, geef dan de --doshared parameter op als u wilt dat de gedeelde tabellen worden bijgewerkt. Anders worden ze niet bijgewerkt door het script!

What to do if it says "MediaWiki requires PHP x.y.z or higher; you are using PHP x.w.v"

See Manual:Common errors and symptoms#MediaWiki requires PHP 7.4.3 or higher; you are using PHP 7.3.17

Wat te doen als php update.php mislukt

Dit kan veroorzaakt worden door een niet goed werkende extensie of skin.

  • Controleer of alle extensies en skins die in LocalSettings.php aangeroepen worden, aanwezig zijn
  • Controleer of de extensies de goede registratie methode gebruiken (wfLoadExtension versus require_once)
  • Zet de eerste helft van de extensies in LocalSettings.php op commentaar. Als update.php dan wel werkt, maak dan de helft van die extensies weer actief. Er staat dan dus nog een kwart op commentaar. Het idee is dus om door steeds een kleiner aantal op commentaar te hebben en te kijken of het werkt, als het opeens wel werkt dan zet u de helft van de niet weer actief gemaakte weer op commentaar. Herhaal dit totdat update.php werkt en u er maar een op commentaar heeft staan.

Wat te doen bij een fout als "ALTER command denied to user"

Als het scripts afbreekt met een melding als:

Error: 1142 ALTER command denied to user 'wiki'@'localhost' for table 'mytable' (localhost)
ERROR: must be the owner of the mytable relation 

Dit betekent dat u moet controleren dat $wgDBadminuser en $wgDBadminpassword zijn gedefinieerd in het bestand LocalSettings.php (in de hoofdmap). Dit zijn de gebruiker en het wachtwoord dat het script nodig heeft om de database te kunnen benaderen.

In enkele gevallen lijkt een oude variabele $wgDBmwschema (voor Postgres) de tabelnaam voor update te lezen in plaats van $wgDBname, zelfs als er MySQL wordt gebruikt. Als dat het geval is, verwijder dan de definitie van $wgDBmwschema in LocalSettings.php.

Wat te doen bij een fout 'register_argc_argv is set to false'

U kunt de volgende fout krijgen:

Cannot get command line arguments, register_argc_argv is set to false
  1. Ga naar ~/maintenance. Wijzig het bestaande bestand 'php.ini' of maak er een aan.
  2. Voeg de volgende regel toe:
register_argc_argv=true
  1. Voer php update.php opnieuw uit

Webbrowser

MediaWiki-versie:
1.17
Zie ook update.php

Als uw database al groot is en veel gebruikt wordt, gebruik dan liever niet de updater via het web, het proces van updaten zal waarschijnlijk in een time-out eindigen als de maximum_execution_time is bereikt. In dat geval moet u update.php dus via de commando-regel uitvoeren. De grens voor groot wordt bepaald door uw webserver (bijv. performance, de drukte en wat de maximum execution time van PHP is). Als u de commando-regel niet mag gebruiken van uw webhost, kies dan maar een andere webhost voor uw wiki.

  1. Voer altijd een backup uit alvorens database-onderhoud te doen.
  2. Navigeer met uw webbrowser naar /mw-config/index.php. Als uw wiki bijvoorbeeld op http://example.org/w/index.php is, navigeer dan naar http://example.org/w/mw-config/index.php.
  3. Kies uw taal en kies doorgaan.
  4. De bestaande installatie moet herkend worden. Volg de instructies op het scherm om de upgrade te doen.
    Als er gevraagd wordt om de "upgrade key", zoek dan in uw bestand LocalSettings.php naar de waarde van $wgUpgradeKey .

Het kan lijken dat de webupdater niet werkt, in plaats van het initiële scherm met de taalselectie ziet u dan een lege wiki-pagina, eventueel met een fouttekst. Waarschijnlijk gebruikt uw webserver dan Rewrite Rules (meestal voor kortere URL's), dan ziet u de updater niet op mw-config/, maar een wiki-pagina op Mw-config/, dus met een hoofdletter. Hernoem in dat geval dan het bestand .htaccess even tijdelijk tijdens de update. Probeer na het hernoemen de webupdater te starten.

  Waarschuwing: Als u deze methode gebruikt, wijzig dan de naam van het bestand .htaccess terug, na het uitvoeren van het upgrade script! Anders werken korte URL's en mogelijk andere zaken niet meer!

De update testen

Controleer, na het upgraden, of de wiki nog werkt, test de volgende zaken:

  • Pagina's tonen
  • Pagina's bewerken
  • Bestand uploaden
  • Ga naar Special:Version en kijk of de versie de nieuwe versie is, kijk ook of de extensies aanwezig zijn.

Resten van oude installaties verwijderen

Als u de vorige installatie in een andere map heeft gezet op de server, zorg dan dat die ouder versie weg is of niet benaderbaar via een webbrowser. Het is belangrijk om een oudere versie niet benaderbaar te hebben via het web, u voert immers niet voor niets een nieuwe versie in, ook kan uw server hierdoor aangevallen worden.

Veelgestelde vragen

Hoe lastig is het om te upgraden?

Als het enige bestand dat u heeft gewijzigd LocalSettings.php is, en u upgrade vanaf 1.5 of later, dan is het een simpel proces van een paar minuten handmatig werk. Het wijzigen van het database-schema duurt even, afhankelijk van de grootte van de database. Dat kan uren duren voor wiki's met miljoenen pagina's, maar bij een paar duizend pagina's gaat het in een paar seconden.

Kleine upgrades, alleen het laatste getal wijzigt ( 1.41.0 -> 1.41.4), hebben geen schema-wijzigingen. U kunt de bestanden wijzigen.

Upgraden vanaf 1.4 of ouder is mogelijk gecompliceerd vanwege de ondersteuning voor karaktersets anders dan UTF-8 is vervallen. Daarnaast is het schema voor opslaan bulk tekst gewijzigd. Lees de betreffende sectie in het bestand UPGRADE.

Upgraden wordt lastig als er in uw wiki aanpassingen van de broncode zijn gedaan, en u die wijzigingen wilt behouden. Gebruik zo nodig hulpmiddelen als diff, patch, Meld en WinMerge. Er kan ook een probleem zijn als uw wiki niet meer onderhouden extensies gebruikt. Zorg dat uw extensies actueel zijn, voor en na de upgrade van MediaWiki.

Bij aanpassingen in een skin of het gebruik van een eigen skin, u dient waarschijnlijk uw wijzigingen / toevoegingen weer opnieuw aan te brengen.

In plaats van bij elke update uw "globale" CSS en JS (JavaScript) bestanden te wijzigen, kunt u beter de code code toevoegen aan uw pagina's MediaWiki:Common.js en MediaWiki:Common.css. Deze zijn deel van de database die hergebruikt zullen worden bij een upgrade.

Hoe doe ik een upgrade vanaf een hele oude versie? In een keer, of in stappen?

MediaWiki-versie:
1.4

Dat hangt af of u upgrade van MediaWiki 1.4 of ouder, upgrade in dat geval eerst naar MediaWiki 1.5. Als u een Latin-1 wiki bijwerkt, gebruik dan upgrade1_5.php (staat in MediaWiki 1.5) om de teksten in de database te converteren naar UTF-8 ($wgUseLatin1 moet op true staan in uw bestand LocalSettings.php ). Voer daarna update.php uit, zet de optie $wgLegacyEncoding option in LocalSettings.php op de eerder gebruikte encoding (bijv. windows-1252). Op een vergelijkbare manier zijn o.a. Wikipedia geupgrade van MediaWiki 1.4 naar 1.5. Zie enige notities op Wikitech. Mogelijk moet u eerst upgraden naar MediaWiki 1.4 voordat u het script upgrade1.5 kunt uitvoeren. Als u een dump van de database wilt maken (bijv. MySQL) van uw Latin-1 wiki, zorg dan dat het type van het veld old_text in de tabel text mediumblob is, niet mediumtext, anders kunt u problemen krijgen met de character encoding.

MediaWiki-versies:
1.5 – 1.35

Als u upgrade vanaf MediaWiki 1.5 of nieuwer naar 1.35, dan kunt u in een stap upgraden, van uw oude versie naar de laatste stabiele versie. De rapporten en het automatische testen geven aan dat dit in een stap kan. Als u het niet gelooft, lees dan dit e-mail bericht. Echter, door versies over te slaan neemt de kans toe dat u PHP fouten krijgt, dan als u upgrade van de voorlaatste versie. Maar dan had u die foutmeldingen bij een eerdere (overgeslagen) upgrades gekregen. Door updates in een keer in te halen, verzamelt u dus ook de foutmeldingen in een keer. Het maakt de upgrade wel lastiger, wij raden af om een upgrade van een stabiele versie van MediaWiki over te slaan.

MediaWiki-versie:
1.35

Als u upgrade naar MediaWiki 1.36 of nieuwer, worden alleen upgrades van de laatste twee LTS releases ondersteund (phab:T259771). Dat betekent dat u bij oudere versies eerst moet upgraden naar MediaWiki 1.35 en daarna kunt upgraden naar 1.36.

Moet ik eerst een backup maken?

In het kort: Ja.

Het lange antwoord: het hangt af van a) hoeveel uw gegevens u waard zijn, b) hoe moeilijk het is om een back-up te maken en c) hoe goed u thuis bent in MySQL onderhoud en beheer.

Als de upgrade mislukt dan kan uw database inconsistent zijn, mogelijk zijn er al wel wat aanpassingen gedaan, maar het zal wel niet de bedoelde database zijn voor de oude of de nieuwe versie van de code. Het optreden van een fout in PHP/MySQL tijdens de upgrade zorgt ervoor dat uw database waarschijnlijk gedeeltelijk is bijgewerkt. Hopelijk kan dit probleem toch met wat handmatig werk worden opgelost. Maar het is vast gemakkelijker om uw database back-up van voor het uitvoeren van update.php terug te zetten en de update opnieuw te proberen. Anders bent u misschien lang bezig met nodeloos werk.

Recovery is vaak complex. Vrijwilligers op een forum voor ondersteuning worden vast niet blij of toegefelijk als u moet vertellen dat u geen back-up van de code en de database heeft gemaakt en vervolgens hulp wil om de corrupte database te herstellen. Als u de back-up kunt terugzetten, rapporteer dan de fout op het betreffende project in het proces upgrade.

<span id="Can_I_keep_my_LocalSettings.php?">

Kan LocalSettings.php behouden blijven?

Ja, maar mogelijk moet u wat kleine wijzigingen doen. Het formaat van LocalSettings.php is grotendeels compatibel met de oudere versie. Wijzigingen die de compatibiliteit van LocalSettings.php beperken worden aangegeven in de sectie "configuration changes" van de release notes.

Kan de wiki online blijven bij het upgraden?

In het algemeen ja, maar bij uploaden vanaf Git kan dit voor een paar seconden tijdelijk onderbroken worden.

Als u een kleine upgrade doet, de hoofdversie blijft gelijk, dan hoeft u alleen de source bij te werken.

NB: voor het volgende heeft u toegang nodig tot de commando-regel. Als u wijzigt van de hoofdversie, dan is de aanbevolen manier als volgt:

  1. Pack de nieuwe versie van MediaWiki uit in een nieuwe map
  2. handelingen vooraf in nieuwe map: kopieer uw huidige bestand LocalSettings.php uit de oude map, kopieer elke geïnstalleerde extensie en eigen skin (indien aanwezig). Controleer de instellingen $wgLogo en $wgLogos in LocalSettings.php en kopieer, indien nodig, het bestand met het logo uit de oude map.
  3. In de release notes van de nieuwe versie, kijk of er aanpassingen nodig zijn in LocalSettings.php.
  4. In de oude map, wijzig LocalSettings.php en voeg de volgende code toe. Dit zet de database in de mode alleen-lezen voor de normale wiki activiteiten, u kunt dan als enige de database in verband met de upgrade wijzigen. Als een gebruiker iets wil wijzigen dan wordt er deze melding getoond:
    $adminTask = ( PHP_SAPI === 'cli' || defined( 'MEDIAWIKI_INSTALL' ) );
    $wgReadOnly = $adminTask ? false : 'Upgrading to MediaWiki 1.42.3';
  5. Voer het update script of de webupdater uit in de nieuwe map.
  6. Kopieer de afbeeldingen in de submap images van de oude map naar de nieuwe map.
  7. Verwissel de oude en de nieuwe map. (Dit geeft de database weer vrij voor bijwerken, omdat $wgReadOnly alleen was gezet in de oude map LocalSettings.php.)

Waarom bijwerken?

Meld u aan bij mediawiki-announce om meldingen te krijgen over nieuwe releases.

In recente releases worden beveiligingsrisico's aangepakt om uw wiki te beschermen tegen vandalen, dat lek zat dus in de oude release (zie Levensduur versie ).

In een nieuwe hoofdrelease wordt ook functionaliteit toegevoegd, daar zat u vast al op te wachten: bekijk de release notes voor de details.

Zie ook