Her beskriver vi tre metoder til at sikkerhedskopiere/downloade din MySQL-database:
- Kontrolpanelet på www.domaeneshop.dk
- MySQL WorkBench (enkel brugergrænseflade, brug den på din egen pc)
-
mysqldump
(til avancerede brugere, brugt på vores login-server)
- phpMyAdmin er også installeret, og hvis du er fortrolig med softwaren, kan du bruge den.
Kontrolpanelet på www.domaeneshop.dk
Bemærk! Hvis din database er meget stor, er det muligvis ikke muligt at downloade den på denne måde. Der vil være et advarselsikon ( ) med info om det i kontrolpanelet, og du skal så vælge en af de andre metoder.
- Log ind som normalt i kontrolpanelet på www.domaeneshop.dk/login .
- Vælg domænet fra Mine domæner.
- Vælg fanen Webhosting.
- Vælg Vis/ændre på MySQL-bjælken.
- Klik på ... til højre for linjen for den database, du vil sikkerhedskopiere.
- Klik på Eksport.
- Du modtager en zip-fil, der indeholder en SQL-fil med en kopi af databasen.
- Du kan gendanne ved at udpakke zip-filen og køre SQL-filen som et SQL-script .
MySQL WorkBench
MySQL Workbench -programmet, til Windows, Mac og Linux, er et letanvendeligt program til styring og sikkerhedskopiering af en MySQL-database. Følg tjeklisten nedenfor for at tage en sikkerhedskopi med MySQL Workbench. Hvis du allerede har brugt MySQL WorkBench til at oprette forbindelse til din database, skal du springe til punkt 6 om eksport.
Bemærk venligst, at MySQL Workbench i den seneste version (8.0.19) retter endnu et alvorligt sikkerhedshul . Desværre er de fleste varianter af MySQL Workbench 8 inkompatible med MySQL 5.7 og MariaDB, og kræver MySQL 8. Vær derfor forsigtig ved brug af softwaren, og overvej alternativer som f.eks. DBeaver ( dbeaver.io ).
Følgende guide er til ældre (og derfor usikre ) udgaver af Workbench.
- Tjek først, at du har en understøttet version, så du undgår så mange sikkerhedshuller som muligt.
- BEMÆRK! Version 6.3.6 har en alvorlig teknisk fejl og kan ikke bruges. Nyere versioner burde virke, som f.eks 6.3.8 i Debian Stretch.
- Du vil se denne fejlmeddelelse nederst i vinduet, hvis du har en forældet version.
- Først skal du oprette en forbindelsesprofil ved at trykke på plustegnet til højre for "MySQL Connections".
- Udfyld profilen med de sædvanlige loginoplysninger til MySQL.
- Når profilen er oprettet, skal du klikke på den for at oprette forbindelse.
- Bemærk: WorkBench kan give en advarsel om MySQL-version. Dette er ikke et problem, tilslut alligevel ("Fortsæt alligevel").
- Gå ind i programmenuen, vælg "Server" og derefter "Dataeksport".
- Vælg din database (skema) til eksport, og vælg eventuelt tabeller du ikke ønsker fra højre side af skærmen.
- Vælg at eksportere sikkerhedskopien til en selvstændig fil ("Eksporter til selvstændig fil") for at undgå problemer med TCP-hastighedsbegrænsninger .
- For MySQL WorkBench 8.x og senere med MySQL 5.6 og MariaDB skal du gå ind i "Advanced Options..." og ændre "column-statistics" fra TRUE til FALSE.
- For en komplet sikkerhedskopi, når du har oprettet lagrede procedurer og funktioner, skal du også markere dette.
- Klik på "Start eksport".
- På samme måde kan du bruge "Server" -> "Dataimport" til også at gendanne fra backup.
Fejlmeddelelse om MySQL-version
MySQL WorkBench er lavet af Oracle, og vil derfor give en advarsel om versionsnumre, som de har stærke meninger om. Fejlmeddelelsen starter med noget som dette: "Inkompatibel/ikke-standard serverversion eller forbindelsesprotokol fundet (10.3.10)" Vælg "Fortsæt alligevel" for at oprette forbindelse til databasen.
kommandoen mysqldump
Alternativt kan du i Unix-skallen på vores login-server bruge kommandoen mysqldump
til at lave en backup af alle data fra din database, også kaldet en SQL-dump. Dette skaber gyldig SQL-kode, som kan bruges til at gendanne din database senere.
Af hensyn til plads og ressourceforbrug anbefaler vi, at du downloader sådanne sikkerhedskopier til din egen pc og sletter dem fra dit webhotel efterfølgende.
mysqldump
har mange avancerede muligheder for at eksportere data sikkert, vi anbefaler at du sætter dig grundigt ind i hvad du skal bruge til dine data. På vores login-server er mysqldump taget fra Debians standardpakke til MariaDB 10.1, dokumentation kan findes her .
Anbefalede muligheder for eksport med mysqldump
--skip-disable-keys --no-autocommit --hex-blob --no-tablespaces
Andre muligheder
Hvis du vil bruge disse, skal du først læse dokumentationen og være meget opmærksom på eventuelle fejlmeddelelser eller advarsler.
--force --routines --triggers
Hvis du har store BLOB-data, kan du prøve:
--max-allowed-packet=32M
men ikke større.
MySQL 5.6 og 5.7
Oracle introducerede inkompatible ændringer i MySQL 5.6.49 og MySQL 5.7.31, som fjerner adgang til unødvendige metadata.
Hvis du får fejlmeddelelsen " Adgang nægtet; du har brug for (mindst en af) PROCESS-rettighederne til denne operation" når du prøver at dumpe tablespaces , så skal du bruge denne mulighed for mysqldump:
--no-tablespaces
Eksempler på mysqldump
BEMÆRK: du bliver bedt om din MySQL-adgangskode, så sørg for at have den klar!
1. Komprimeret backup
Her komprimeres SQL-koden med gzip
, den skal udpakkes med enten gunzip
eller anden software, der forstår gzip-formatet.
mysqldump DATABASENAVN -u BRUGERNAVN -h DATABASENAVN .mysql.domeneshop.no -p | gzip > filnavn.sql.gz
Erstat filnavn.sql.gz
med det filnavn, du vil gemme dine data i.
Du kan selvfølgelig bruge anden software til at komprimere med.
2. Ukomprimeret backup
Hvis du ikke vil have komprimeret backup, skal du slippe gzip og bruge følgende kommando i stedet:
mysqldump DATABASENAVN -u BRUGERNAVN -h DATABASENAVN .mysql.domeneshop.no -p > filnavn.sql
3. Hvordan vores kontrolpanel gør det
mysqldump DATABASENAVN -u BRUGERNAVN -h DATABASENAVN .mysql.domeneshop.no
--skip-opt --single-transaction --set-charset
--create-options --quick --force --add-locks --extended-insert
--add-drop-table --no-autocommit --rutiner --triggers -p > filnavn.sql