Du kan bruge T-SQL BACKUP DATABASE
sætning for at sikkerhedskopiere enhver SQL Server-database.
Denne artikel viser dig, hvordan du sikkerhedskopierer en database til disk. Dette opretter en .bak-fil, som kan bruges senere til at gendanne databasen, hvis det kræves.
Opret en fuld sikkerhedskopi
Her er et grundlæggende eksempel på at oprette en fuld sikkerhedskopi af en SQL Server-database til disk:
BACKUP DATABASE Movies TO DISK = 'Z:\mssql\backups\Movies.bak';
Dette eksempel opretter en fuld sikkerhedskopi af Movies-databasen til en fil på disk. Dette eksempel bruger en placering på Z-drevet, men stien kan være alt, hvad du vil. Databasen bør sikkerhedskopieres til et andet drev end det, der bruges til selve databasen. På den måde, hvis der er en diskfejl, mister du ikke din backup-fil sammen med databasen.
Følgende eksempel gør det samme, men dette eksempel bruger Linux- og Mac-filstisyntaks:
BACKUP DATABASE Movies TO DISK = '/var/opt/mssql/backups/Movies.bak';
Opret en differentiel sikkerhedskopi
Når du har oprettet en fuld sikkerhedskopi, kan du oprette differentielle sikkerhedskopier. En differentiel backup er en, hvor kun dele af databasen, der er ændret siden den sidste fulde database backup blev oprettet, sikkerhedskopieres.
Differentielle sikkerhedskopier reducerer den tid, det tager at sikkerhedskopiere databasen (på grund af det faktum, at kun ændringerne siden sidste fulde sikkerhedskopiering er sikkerhedskopieret).
For at oprette en differentiel backup skal du bruge den samme BACKUP DATABASE
erklæring, som du bruger til at oprette den fulde sikkerhedskopi, bortset fra at denne gang tilføjer WITH DIFFERENTIAL
klausul.
Her er et eksempel:
BACKUP DATABASE Movies TO DISK = 'Z:\mssql\backups\Movies.bak' WITH DIFFERENTIAL;
Kørsel af denne erklæring vil den differentielle sikkerhedskopi tilføjes til den originale sikkerhedskopifil, der indeholder den fulde sikkerhedskopi.
Sikkerhedskopier transaktionsloggen
Du kan også tage backup af transaktionsloggen. Dette gøres med BACKUP LOG
erklæring.
Her er et eksempel:
BACKUP LOG Movies TO DISK = 'Z:\mssql\backups\Movies_log.bak';