phpMyAdmin:
Als je complexe webapplicaties ontwikkeld is de kans groot dat je ook gebruik maakt van een MySQL database om daar data of instellingen in te bewaren. Query’s met SELECT, UPDATE en INSERT statements zullen je dan ook niet onbekend zijn.
Af en toe zal je ook een back-up maken van de database, voor archief of ontwikkeldoeleinden. Een bekende manier om dat te doen is de online webapplicatie phpMyAdmin die door veel hostingbedrijven wordt aangeboden.
mysqldump:
Wist je dat je ook via de terminal of commandline een back-up kan maken van een MySQL database? Dit vereist wel wat meer technische kennis. Maar soms kan een database zo groot worden dat phpMyAdmin het niet meer aankan. Zo is het uploaden van bestanden standaard beperkt tot 20 MB.
Op de terminal maak je gebruik van mysqldump. De terminal is het zwarte scherm met witte letters en lijkt op het MS-DOS scherm van vroeger voordat Windows bestond.
Met commando’s vertel je mysqldump:
- Welke database je wilt back-uppen
- Je hoe wilt back-uppen
- Met welke gebruikersnaam en wachtwoord
- En zo nog tientallen opties
Een simpel voorbeeld:
mysqldump -u username -p database > my_backup.sql
Maar vooral die tientallen opties kan je niet allemaal uit je hoofd onthouden. Mede ook omdat je ze niet altijd nodig hebt. Denk aan het beperken van het aantal records, tabellen, comprimeren van bestand, alleen de structuren exporteren etc.
Gelukkig is er de website Mysqldump.guru die al deze opties wel weet. Op deze website vind je uitleg over deze opties + praktische voorbeelden.
Specifieke tabellen back-uppen en het bestand zippen:
mysqldump my_database my_table1 my_table2 my_table3 | gzip > my_backup.sql.gz
TablePlus:
Een ander gratis programma dat super handig is om database te beheren is TablePlus. Ik gebruik dit nu al zelf een aantal jaren en het werkt heel fijn. Het is een programma dat je op macOS of Windows installeert.
In principe kan je er hetzelfde mee als met phpMyAdmin, maar heb je geen limieten. Zo kan je ook back-ups exporteren of importeren. Je kan TablePlus gebruiken voor meerdere verschillende databases door profielen aan te maken.
De databases kunnen lokaal of extern staan. Weet wel dat niet alle hostingbedrijven het toestaan om van buitenaf verbinding te maken met de database.