Alle handleidingen
GemiddeldMagento 2.4.x30 minuten

Backup en disaster recovery voor Magento 2

Zorg dat je altijd kunt herstellen. Van database backups tot complete server snapshots en recovery procedures.

Coding.nl5 views
Backup en disaster recovery voor Magento 2

Backup strategie voor Magento 2

Een goede backup strategie beschermt tegen dataverlies door hardware failure, hacks, of menselijke fouten.

Wat moet je backuppen?

Database

De MySQL database bevat:

  • Producten en categorieën
  • Klanten en orders
  • Configuratie
  • CMS content

Files

  • app/code: Custom modules
  • app/design: Custom themes
  • pub/media: Product afbeeldingen
  • app/etc: Configuratie (env.php)

Wat niet?

  • vendor/: Kan hersteld worden via composer
  • generated/: Wordt opnieuw gegenereerd
  • var/cache/: Cache files

Database backup

Via CLI (mysqldump)

``bash

mysqldump -u username -p database_name > backup_$(date +%Y%m%d).sql

`

Gecomprimeerd

`bash

mysqldump -u username -p database_name | gzip > backup_$(date +%Y%m%d).sql.gz

`

Via Magento CLI

`bash

bin/magento support:backup:db

`

Automatiseren

Cron job voor dagelijkse backup:

`bash

0 3 * * * mysqldump -u user -ppassword dbname | gzip > /backups/db_$(date +\%Y\%m\%d).sql.gz

`

File backup

Media files

`bash

tar -czvf media_backup_$(date +%Y%m%d).tar.gz pub/media/

`

Complete Magento

`bash

tar -czvf magento_backup_$(date +%Y%m%d).tar.gz \

--exclude='var/cache' \

--exclude='var/page_cache' \

--exclude='var/session' \

--exclude='generated' \

/path/to/magento/

`

Rsync voor incrementeel

`bash

rsync -avz --delete /path/to/magento/ /backup/location/

`

Hosting backup services

Managed hosting

Veel hostingpartijen bieden automatische backups:

  • Hypernode: Dagelijkse backups, point-in-time recovery
  • Nexcess: Automated backups
  • AWS: EBS snapshots, RDS backups

Cloud backup services

  • AWS S3: Goedkope opslag voor backups
  • Google Cloud Storage: Vergelijkbaar
  • Backblaze B2: Zeer kostenefficiënt

Backup schema

Aanbevolen rotatie

  • Dagelijks: Database + media (7 dagen bewaren)
  • Wekelijks: Complete backup (4 weken bewaren)
  • Maandelijks: Complete backup (12 maanden bewaren)

3-2-1 regel

  • 3 kopieën van data
  • 2 verschillende media types
  • 1 off-site backup

Backup verificatie

Test restores

Regelmatig testen of backups werkend zijn:

  • Restore naar test omgeving
  • Verifieer data integriteit
  • Test basis functionaliteit
  • Checksum verificatie

    `bash

    sha256sum backup.sql.gz > backup.sha256

    # Later verifiëren:

    sha256sum -c backup.sha256

    `

    Restore procedures

    Database restore

    `bash

    # Gunzip indien gecomprimeerd

    gunzip backup.sql.gz

    # Import

    mysql -u username -p database_name < backup.sql

    `

    File restore

    `bash

    tar -xzvf backup.tar.gz -C /restore/location/

    `

    Na restore

    `bash

    bin/magento setup:upgrade

    bin/magento cache:flush

    bin/magento indexer:reindex

    `

    Disaster recovery plan

    Documenteer

  • Backup locaties
  • Restore stappen
  • Contactpersonen
  • Verwachte recovery time
  • Recovery Time Objective (RTO)

    Hoe snel moet je online zijn?

    • <1 uur: Hot standby nodig
    • <4 uur: Snelle restore procedure
    • <24 uur: Standaard restore

    Recovery Point Objective (RPO)

    Hoeveel dataverlies is acceptabel?

    • 0: Real-time replicatie
    • <1 uur: Frequente backups
    • <24 uur: Dagelijkse backups

    High Availability opties

    Database replicatie

    MySQL master-slave setup:

    • Master voor writes
    • Slave voor reads en backup
    • Automatische failover

    Multi-server setup

    • Load balancer
    • Meerdere web servers
    • Shared storage voor media

    Cloud solutions

    • AWS RDS Multi-AZ
    • Google Cloud SQL HA
    • Azure SQL failover

    Magento specifieke overwegingen

    Admin sessions

    Na restore kunnen admin sessions invalid zijn. Users moeten opnieuw inloggen.

    Cron jobs

    Check of cron jobs correct draaien na restore.

    External services

    Test connecties met:

    • Payment providers
    • Shipping integrations
    • ERP/PIM

    Search index

    Elasticsearch index moet mogelijk opnieuw worden opgebouwd:

    `bash

    bin/magento indexer:reindex catalogsearch_fulltext

    ``

    Backup tools en extensies

    Magento native

    Beperkte functionaliteit, niet aanbevolen voor productie.

    Server niveau

    Meer betrouwbaar:

    • Hosting backups
    • Server snapshot tools
    • Dedicated backup software

    Monitoring

    Zorg voor alerting als backups falen:

    • Email notificaties
    • Monitoring dashboard
    • Automated testing

    Best practices

    Automatiseer alles

    Handmatige backups worden vergeten. Automatiseer met cron.

    Encrypt sensitive data

    Backup bestanden bevatten klantdata:

    • Encrypt voor opslag
    • Beveiligde transfer (SCP, encrypted S3)

    Retentie beleid

    Bepaal hoe lang backups bewaren:

    • Juridische vereisten
    • Opslagkosten
    • Recovery scenarios

    Documentatie

    Houd bij:

    • Backup locaties en credentials
    • Restore procedures
    • Laatste test datum
    • Contactpersonen
    Deel deze handleiding:

    Info

    Niveau
    Gemiddeld
    Duur
    30 minuten
    Magento
    2.4.x
    PHP
    8.1+
    Views
    5

    Vereisten

    • Toegang tot Magento 2 admin panel
    • Server/hosting toegang

    Wat je leert

    • Database backup strategieën
    • File system backups
    • Automated backup schedules
    • Restore procedures testen

    Categorieën

    Hulp nodig?

    Kom je er niet uit? Onze Magento experts helpen je graag.

    Neem contact op

    Professionele hulp nodig bij Magento?

    Onze Magento experts bouwen, optimaliseren en onderhouden je webshop.