Drupal backup maken en site migreren: handleiding

Regelmatige backups en de mogelijkheid om je Drupal site te migreren zijn essentieel voor websitebeheer. In deze handleiding leer je hoe je professionele backups maakt en je site veilig verplaatst naar een nieuwe omgeving.

Waarom backups cruciaal zijn

Een goede backup beschermt je tegen:

  • Gehackte website door malware
  • Per ongeluk verwijderde content
  • Mislukte updates
  • Serverproblemen
  • Hosting migraties Zonder backup kun je maanden werk kwijtraken. Een backup maken kost slechts enkele minuten.

Backup maken via Backup and Migrate

De Backup and Migrate module is de standaard voor Drupal backups.

Module installeren

composer require drupal/backup_migrate

Activeer via:

  1. Ga naar Extend
  2. Zoek Backup and Migrate
  3. Vink aan en klik op Install

Database backup maken

De database bevat al je content en configuratie:

  1. Ga naar Configuration en dan Development
  2. Klik op Backup and Migrate
  3. Je bent nu op het Backup tabblad
  4. Selecteer Default Database als bron
  5. Kies Download als bestemming
  6. Klik op Backup now
  7. Sla het .sql.gz bestand veilig op

Volledige backup maken

Voor een complete backup inclusief bestanden:

  1. Ga naar Backup and Migrate
  2. Selecteer Entire Site als bron
  3. Dit maakt een backup van:
    • Database
    • Publieke bestanden (uploads)
    • Private bestanden
  4. Klik op Backup now

Automatische backups instellen

Plan regelmatige backups:

  1. Ga naar Backup and Migrate en dan Schedules
  2. Klik op Add Schedule
  3. Configureer:
    • Name: Dagelijkse backup
    • Source: Default Database of Entire Site
    • Destination: Server bestanden of externe opslag
    • Frequency: Dagelijks
    • Bewaar: 7 backups
  4. Sla de schedule op De backups worden automatisch uitgevoerd via cron.

Backup via DirectAdmin

Combineer met DirectAdmin backups voor extra zekerheid.

Volledige account backup

  1. Log in op DirectAdmin
  2. Ga naar Account Manager en dan Create/Restore Backups
  3. Selecteer:
    • Domeinbestanden
    • Databases
    • E-mail (indien van toepassing)
  4. Klik op Create Backup
  5. Download de backup naar je computer

Database apart backuppen

  1. Ga naar Account Manager en dan phpMyAdmin
  2. Selecteer je Drupal database
  3. Klik op Export
  4. Kies Quick voor standaard instellingen
  5. Klik op Go om te downloaden

Backup via SSH en Drush

Voor gevorderde gebruikers biedt Drush snelle backups.

Database backup met Drush

# Verbind via SSH
cd ~/domains/jouwdomein.nl/public_html
# Maak database backup
drush sql:dump > ~/backup/drupal-db-$(date +%Y%m%d).sql
# Gecomprimeerd
drush sql:dump | gzip > ~/backup/drupal-db-$(date +%Y%m%d).sql.gz

Bestanden backup

# Backup van publieke files
tar -czf ~/backup/drupal-files-$(date +%Y%m%d).tar.gz sites/default/files
# Volledige site backup
tar -czf ~/backup/drupal-full-$(date +%Y%m%d).tar.gz .

Automatiseren via cron

Voeg toe aan crontab:

# Dagelijkse backup om 03:00
0 3 * * * cd ~/domains/jouwdomein.nl/public_html && drush sql:dump | gzip > ~/backup/drupal-db-$(date +\%Y\%m\%d).sql.gz

Drupal site migreren

Bij een migratie verplaats je je site naar een nieuwe server of domein.

Voorbereiding

Voordat je begint:

  1. Maak een volledige backup
  2. Noteer de Drupal versie
  3. Documenteer geinstalleerde modules
  4. Controleer PHP versie vereisten
  5. Plan de migratie buiten piekuren

Stap 1: Bestanden kopieren

Download alle bestanden van de oude server:

# Via FTP/SFTP
# Download de volledige Drupal map
# Via SSH (op oude server)
tar -czf drupal-site.tar.gz -C ~/domains/ouddomein.nl public_html

Upload naar de nieuwe server:

# Uitpakken op nieuwe locatie
tar -xzf drupal-site.tar.gz -C ~/domains/nieuwdomein.nl

Stap 2: Database migreren

Exporteer de database van de oude server:

# Via Drush
drush sql:dump > drupal-db.sql
# Via phpMyAdmin
# Export en download als .sql

Importeer op de nieuwe server:

# Via Drush
drush sql:cli < drupal-db.sql
# Via phpMyAdmin
# Gebruik de Import functie

Stap 3: settings.php aanpassen

Bewerk settings.php voor de nieuwe omgeving:

$databases['default']['default'] = [
  'database' => 'nieuwe_database',
  'username' => 'nieuwe_user',
  'password' => 'nieuw_wachtwoord',
  'host' => 'localhost',
  'port' => '3306',
  'driver' => 'mysql',
  'prefix' => '',
];
// Update trusted hosts
$settings['trusted_host_patterns'] = [
  '^nieuwdomein\.nl$',
  '^www\.nieuwdomein\.nl$',
];

Stap 4: Cache legen en testen

Na de migratie:

# Leeg alle caches
drush cache:rebuild
# Voer eventuele updates uit
drush updatedb

Controleer:

  • Homepage laadt correct
  • Admin login werkt
  • Afbeeldingen worden getoond
  • Formulieren werken

Stap 5: URLs bijwerken

Als het domein wijzigt, update de base URL:

  1. Controleer settings.php voor hardcoded URLs
  2. Gebruik Search and Replace voor content:
composer require drupal/search_replace_scanner

Of via database:

UPDATE node__body SET body_value = REPLACE(body_value, 'ouddomein.nl', 'nieuwdomein.nl');

Backup herstellen

Als je een backup moet terugzetten:

Via Backup and Migrate

  1. Ga naar Configuration en dan Backup and Migrate
  2. Klik op het Restore tabblad
  3. Upload je backup bestand
  4. Selecteer wat je wilt herstellen
  5. Klik op Restore now

Via command line

# Database herstellen
drush sql:cli < backup.sql
# Bestanden herstellen
tar -xzf drupal-files.tar.gz -C sites/default/files
# Cache legen
drush cache:rebuild

Backup best practices

Volg deze richtlijnen:

Frequentie

  • Actieve sites: Dagelijkse database backup
  • Statische sites: Wekelijkse backup
  • Voor updates: Altijd backup maken

Opslag

  • Bewaar backups op meerdere locaties
  • Gebruik cloud opslag (Google Drive, Dropbox)
  • Houd minimaal 7 dagen aan backups

Testen

  • Test regelmatig het herstellen van backups
  • Gebruik een staging omgeving voor tests
  • Documenteer het herstelproces

Gerelateerde artikelen

Hulp nodig?

We staan voor je klaar! Loop je ergens tegenaan of heb je vragen? Ons supportteam helpt je graag persoonlijk verder. Stuur ons een berichtje via het ticketsysteem - we reageren meestal binnen een paar uur en denken graag met je mee.