Probleemoplossing bij database-updates
Voordat je begint met het oplossen van problemen met database-updates, maak altijd een back-up van je database en codebase.
Als er problemen zijn die een veilige uitvoering van database-updates verhinderen, zal update.php een foutmelding weergeven.
Lees de foutmelding zorgvuldig om het probleem op te lossen.
Ongeldige modules of thema’s
In sommige gevallen kan update.php melden dat er ongeldige modules of thema’s aanwezig zijn. Dit gebeurt wanneer een module of thema wordt vermeld in het configuratiebestand core.extension.yml, maar ontbreekt of niet compatibel is met de site.
Om dit probleem op te lossen, moet je eerst controleren of je niet per ongeluk een onjuiste versie van core.extension.yml hebt geïmporteerd. Los daarna het specifieke probleem op dat in het bericht wordt weergegeven. Start vervolgens update.php opnieuw zodra het probleem is opgelost.
Module of thema ontbreekt
1. Als update.php meldt dat een module of thema ontbreekt en het juiste core.extension.yml-bestand wordt gebruikt, controleer dan of de module of het thema daadwerkelijk aanwezig is in de codebase van de site.
- Controleer bijvoorbeeld in [site-root]/modules en [site-root]/sites/all/modules of er een map is die overeenkomt met de naam van de ontbrekende module. [site-root]/modules heeft prioriteit boven [site-root]/sites/all/modules, maar beide worden gescand op modules.
2. Als de map volledig ontbreekt, zoek de module op Drupal.org en download deze opnieuw in de map voor modules. Zorg ervoor dat je een versie downloadt die compatibel is met jouw Drupal-versie.
3. Als de map aanwezig is, maar bestanden ontbreken of beschadigd zijn, kun je eveneens de module opnieuw downloaden van Drupal.org. Zorg er opnieuw voor dat de versie compatibel is met jouw Drupal-versie. Overschrijf de bestaande map met de nieuwe versie.
4. Als de module niet van Drupal.org afkomstig is, probeer dan de oorspronkelijke bron te vinden.
- Als de module specifiek voor jouw site of applicatie is ontwikkeld, probeer dan de originele versie te vinden en voeg deze opnieuw toe aan de map modules.
- Als de module door een derde partij is ontwikkeld maar niet op Drupal.org staat (bijvoorbeeld op GitHub), probeer dan een geldige versie te vinden en opnieuw te downloaden.
5. In het uiterste geval, als de module niet kan worden gevonden, kun je proberen de vermelding ervan uit core.extension.yml te verwijderen. Let op: dit kan leiden tot fatale fouten op de site.
6. Zodra de module is hersteld, voer je update.php opnieuw uit.
Module of thema is niet compatibel met de geïnstalleerde Drupal-versie
1. Als update.php meldt dat een module of thema niet compatibel is met de geïnstalleerde Drupal-versie, moet je ofwel Drupal bijwerken of de module/thema upgraden.
2. Controleer eerst welke versie van de Drupal-core is geïnstalleerd. Dit kan via de pagina Rapporten → Statusrapport (Reports → Status report).
3. Controleer vervolgens welke versie van de module of het thema is geïnstalleerd door het bestand modules/modulenaam/modulenaam.info.yml te openen. Bovenaan het bestand zou je een van de volgende regels moeten zien:
core: 8.x core_version_requirement: ^8.8 || ^9
Dit betekent dat de module compatibel is met zowel Drupal 8.8+ als Drupal 9. De sleutel core: 8.x
is optioneel in dit geval. (Meer informatie over de sleutel core_version_requirement
.)
core_version_requirement: ^9
Dit betekent dat de module alleen compatibel is met Drupal 9. (Meer informatie over core_version_requirement.)
core: 8.x
Dit betekent dat de module alleen compatibel is met Drupal 8.
core: 7.x
Dit betekent dat de module alleen compatibel is met Drupal 7.
4. Als de Drupal-coreversie te oud is voor de geïnstalleerde module, update dan de Drupal-core.
5. Als de moduleversie te oud is voor de huidige Drupal-core, download of installeer een nieuwere moduleversie.
6. Als er geen compatibele versie van de module of core beschikbaar is, moet je mogelijk een eerdere versie herstellen vanuit een back-up.
7. Zodra er compatibele versies van zowel Drupal-core als de module of het thema aanwezig zijn in de codebase, voer dan opnieuw update.php uit.
Module of thema is niet compatibel met de geïnstalleerde PHP-versie
1. Als een module of thema niet compatibel is met de huidige PHP-versie, zoek dan in het bestand modules/modulenaam/modulenaam.info.yml naar een regel zoals:
php: 7.3
2. Optie 1: Installeer een versie van de module of het thema die jouw huidige PHP-versie ondersteunt.
3. Optie 2: Pas de PHP-versie van je site aan naar een versie die compatibel is met de module.
4. Zodra zowel PHP als de betrokken module of het thema compatibel zijn in de codebase, voer update.php opnieuw uit.