[guide] Backup av filer og database

Hjemmeside
Hjemmesides bilde
Avlogget
Bidragsyter
Ble med: 17.06.2008

De fleste av oss er for slappe til å ta backup av hjemmesiden og innholdet på den, og det gir fatale konsekvenser når uhellet først er ute. Ingenting er som å miste hundrevis av timer med arbeid og innhold. Mange her på Hjemmeside har etterspurt en guide for hvordan man tar backup av websiden, så her er en guide for nettopp dette formålet.

Hvordan ta backup av hjemmesiden

Hvis du bruker et CMS som f.eks. Drupal, WordPress eller Joomla, så er det to områder du må sikkerhetskopiere:

  1. Backup av filer
  2. Backup av database

Jeg er ganske grundig i denne guiden, så den kan nok oppfattes som noe langdryg, men det er mange som er veldig usikre, så jeg prøver å være veldig klar på disse tingene. :)

Hvordan ta backup av filer

Å ta backup av filene er ganske trivielt; koble til webhotell med FTP og last ned alle filer som hører til hjemmesiden din. Hvis du klarer å overføre filer til webhotellet med FTP, så antar jeg at du også klarer å laste ned filer fra webhotellet. Prosessen er nesten identisk. Den eneste forskjellen er at du skal laste ned og ikke opp filene fra webhotellet.

Hvor ofte bør man ta backup av filene? Det kommer helt ann på. De fleste CMS skriver ikke til selve filene, men forsøker å lagre så mye som mulig av innstillinger mv. i databasen. En god regel er å ta backup både før og etter store endringer. Du trenger selvsagt ikke ta backup av filer du allerede har backup av, så du kan nøye deg med å ta sikkerhetskopi av de filene du har endret eller lagt til, eksempelvis hvis du har installert en ny modul i Drupal.

Merk at hvis du laster opp bilder i innlegg osv når du lager innholdet, så vil disse bildene bli lagret blant filene. Det er derfor viktig å sørge for at du har kopi av filene du eller brukerne dine laster opp.

Hvordan ta backup av database

Dette er litt mer tricky å ta backup av databasen, så det er viktig at du leser opplysningene nedenfor nøye.

For deg som bruker Drupal, se denne videoen om hvor enkelt det er å ta backup av databasen med backup and migrate modulen i Drupal CMS. Der lærer du å få tilsendt backup av database på epost i tillegg til å sette opp automatisk sikkerhetskopiering.

Vi tar utgangspunkt i en MySQL-database, siden det er den mest brukte databaseapplikasjonen vi har. Hvis du har webhotell fra Bluehost, Hostgator eller one, så benytter du en MySQL-database. Å gjøre backup av en MySQL-database, kalles å ta en mysqldump.

Personlig synes jeg det enkleste er å ta backup av databasen ved å bruke SSH. Hvis du har vært smart og kjøpt webhotell fra Bluehost, så ligger det en guide til hvordan man tar backup av databasen via SSH her. Til de som allerede vet hvordan man bruker SSH, så ligger en liste over backup kommandoer her.

Backup av database med phpMyAdmin

For de som ikke har SSH-alternativet, så finnes det andre metoder man kan bruke for å ta backup av databasen. Det greieste er nok å gjøre det ved hjelp av databaseadministrasjonsverktøyet phpMyAdmin. phpMyAdmin er allerede tilgjengelig fra kontrollpanelet hos de nevnte webhostene (og for øvrig alle seriøste webhoster), men hvis du har problemer med å finne ut hvordan du kommer inn, kan du stille spørsmål under guiden, så skal jeg hjelpe deg.

Uansett, tilbake til phpMyAdmin: Da antar vi at du klarer å komme deg inn i phpMyAdmin for å ta backup av databasen. De videre trinnene forutsetter at du er logget inn i phpMyAdmin.

  1. Velg "Export"
  2. Velg "Custom – display all possible options"
  3. Databases: Velg alle databasene dine, unntatt "information_schema" (*).
  4. Output: Velg "Save output to a file"
  5. Format: "SQL"
  6. Format-spesific options:
    a) Klikk på og aktiver "Display comments"
    b) Velg "structure and data"
    c) De andre alternativene under "Format-specific options" kan du la være deaktivert.
  7. Object creation options: Klipp på og aktiver samtlige valg her.
  8. Data dump options:
    a) Function to use when dumping data: "INSERT"
    b) Syntax to use when inserting data: "both of the above"
    c) Klikk på og aktiver "Dump binary columns in hexadecimal notation"
    d) Klikk på og aktiver "Dump TIMESTAMP columns in UTC"
  9. De tingene som ikke er nevnt skal være deaktivert.
  10. Velg "Go"
  11. Du får da spørsmål om å laste ned en fil. Dette er sikkerhetskopien

Da skal backup av database være i boks. Merk at noen av alternativene kan være litt annerledes, avhengig av din phpMyAdmin versjon. Konferer da i spørsmålsfeltet nedenfor, så skal jeg forsøke å hjelpe deg.

* databasen "information_schema" er databasen for MySQL, det er i denne databasen brukernavn, passord og rettigheter i forbindelse med administrasjon av selve databasen befinner seg. Det er med andre ord ikke nødvendig å ta backup av denne med mindre du har laget nye brukere eller har særskilt behov for det. Hvis du er usikker, kan du ta backup av denne databasen alene ved å følge trinnene ovenfor etter at du har tatt sikkerhetskopi av de databasene du vet du trenger backup av.

Hjemmeside
Hjemmesides bilde
Avlogget
Bidragsyter
Ble med: 17.06.2008
Backup av database via SSH hos Bluehost

Backup av database via SSH hos Bluehost

I denne videoguiden lærer du hvordan man tar backup av MySQL databasen med en såkalt mysqldump via SSH på webhotell fra Bluehost.

For å få tilgang til SSH, må du først verifisere kontoen din. Gå hit for å lære hvordan man får SSH access hos Bluehost først, og kom deretter tilbake hit etter at du har gjort som guiden sier. Hvis ikke du vil gjøre dette, kan du bruke phpMyAdmin til å ta backup av databasen.

Du kan laste ned PuTTY her (nytt vindu).

Kommandoen vi skriver i SSH for å ta backup av databasen ser slik ut:

mysqldump -h localhost -u ditt_brukernavn -pditt_passord --databases din_database > database_backup.sql

Det skal ikke være mellomrom mellom -p og passordet!

Se her for kommandoer som gjenoppretter eller tar backup av flere databaser samtidig.

Hjemmeside
Hjemmesides bilde
Avlogget
Bidragsyter
Ble med: 17.06.2008
Kommandoer for gjennoppretting og backup av database i SSH

Kommandoer for gjennoppretting og backup av database i SSH

Hvis du har webhotell på UNIX server med SSH-tilgang, så kan du logge inn i shellet og kjøre kommandoen derfra.

I alle kodene nedenfor bytter du selvsagt ut host.domene.com med din databasehost, ditt_brukernavn med brukernavnet til MySQL og ditt_passord med passordet, og helt til slutt din_database med navnet på databasen din.

Backup av én database

mysqldump -h host.domene.com -u ditt_brukernavn -pditt_passord --databases din_database > database_backup.sql

Legg merke til at det ikke skal være mellomrom mellom -p og selve passordet!

Backup av to eller flere databaser

mysqldump -h host.domene.com -u ditt_brukernavn -pditt_passord --databases database_1 database_2 > database_backup.sql

Backup av alle databaser i MySQL

mysqldump -h host.domene.com -u ditt_brukernavn -pditt_passord --all-databases > database_backup.sql

Gjennoppretting av database fra backup

Hvis du skal gjenopprette databasen fra backup kjører du

mysql -h host.domene.com -u ditt_brukernavn -p < database_backup.sql

Du blir da promptet for passord. Skriv inn passordet, så er saken biff.

Hjemmeside
Hjemmesides bilde
Avlogget
Bidragsyter
Ble med: 17.06.2008
Backup and migrate modul til Drupal

For Drupalbrukere har jeg hørt mye skryt om modulen backup and migrate. Den skal vissnok gjøre det veldig enkelt å ta backup av database og filer. Har ikke prøvd den selv, men du kan jo prøve den du – hvis du tør, ;). Skal prøve å få lekt litt med den og se om jeg ikke snekrer en liten guide, hvis den er så nyttig som folk sier den er.

Ny info om databasebackup: Denne videotutorialen er nå ferdig, og du kan lære ta backup av databasen med backup migrate modulen i Drupal her.

Svar på forumemnet

(If you're a human, don't change the following field)
Your first name.
Innholdet i dette feltet blir holdt privat og vil ikke bli vist offentlig.