Delen via


Back-ups maken van bestanden en bestandsgroepen

van toepassing op:SQL Server-

In dit onderwerp wordt beschreven hoe u een back-up maakt van bestanden en bestandsgroepen in SQL Server met behulp van SQL Server Management Studio, Transact-SQL of PowerShell. Wanneer de databasegrootte en prestatievereisten een volledige databaseback-up onpraktisch maken, kunt u in plaats daarvan een bestandsback-up maken. Een back-up van bestanden bevat alle gegevens in een of meer bestanden (of bestandsgroepen).

Zie volledige back-ups van bestanden (SQL Server) en Differentiële back-ups (SQL Server)voor meer informatie over back-ups van bestanden.

Voordat u begint

Beperkingen en beperkingen

  • De BACKUP-statement is niet toegestaan in een expliciete of impliciete transactie.

  • Onder het eenvoudige herstelmodel moeten van alle lees-/schrijfbestanden een back-up worden gemaakt. Dit helpt ervoor te zorgen dat de database kan worden hersteld naar een consistent tijdstip. Gebruik de optie READ_WRITE_FILEGROUPS in plaats van elk lezen/schrijven-bestand of elke bestandsgroep afzonderlijk op te geven. Met deze optie maakt u een back-up van alle lees-/schrijfbestandsgroepen in de database. Een back-up die wordt gemaakt door READ_WRITE_FILEGROUPS op te geven, wordt een gedeeltelijke back-upgenoemd. Zie Gedeeltelijke back-ups (SQL Server).

Zie Back-upoverzicht (SQL Server)voor meer informatie over beperkingen en restricties.

Aanbevelingen

Bij elke geslaagde back-upbewerking wordt standaard een vermelding toegevoegd aan het SQL Server-foutenlogboek en in het gebeurtenislogboek van het systeem. Als u heel vaak een back-up van het logboek maakt, worden deze geslaagde berichten snel verzameld, wat resulteert in enorme foutenlogboeken die het vinden van andere berichten lastig maken. In dergelijke gevallen kunt u deze logboekvermeldingen onderdrukken met behulp van traceringsvlag 3226 als geen van uw scripts afhankelijk is van deze vermeldingen, raadpleegt u traceringsvlagmen (Transact-SQL).

Machtigingen

BACKUP DATABASE- en BACKUP LOG-machtigingen zijn standaard ingesteld op leden van de sysadmin vaste serverfunctie en de db_owner en db_backupoperator vaste databaserollen.

Eigendoms- en machtigingsproblemen in het fysieke bestand van het back-upapparaat kunnen een back-upbewerking verstoren. SQL Server moet kunnen lezen en schrijven naar het apparaat; het account waaronder de SQL Server-service wordt uitgevoerd, moet schrijfmachtigingen hebben. Echter, sp_addumpdevice, dat een vermelding voor een back-upapparaat in de systeemtabellen toevoegt, controleert geen machtigingen voor bestandstoegang. Dergelijke problemen in het fysieke bestand van het back-upapparaat komen mogelijk pas aan het licht wanneer de fysieke resource wordt geopend bij een poging tot back-up of herstel.

SQL Server Management Studio gebruiken

  1. Nadat u verbinding hebt gemaakt met het juiste exemplaar van de SQL Server Database Engine, klikt u in Objectverkenner op de servernaam om de serverstructuur uit te vouwen.

  2. Vouw databasesuit en selecteer, afhankelijk van de database, een gebruikersdatabase of vouw systeemdatabases uit en selecteer een systeemdatabase.

  3. Klik met de rechtermuisknop op de database, wijs takenaan en klik vervolgens op Back-up. Het dialoogvenster Back-up van database wordt weergegeven.

  4. Controleer in de lijst Database de naam van de database. U kunt desgewenst een andere database selecteren in de lijst.

  5. Selecteer Volledige of Differentiëlein de lijst back-uptype.

  6. Klik voor de optie Back-upcomponent op Bestanden en bestandsgroepen.

  7. Selecteer in het dialoogvenster Bestanden en bestandsgroepen selecteren de bestanden en bestandsgroepen waarvoor u een back-up wilt maken. U kunt een of meer afzonderlijke bestanden selecteren of het selectievakje voor een bestandsgroep inschakelen om automatisch alle bestanden in die bestandsgroep te selecteren.

  8. Accepteer de standaardnaam van de back-upset die wordt voorgesteld in het tekstvak Naam of voer een andere naam in voor de back-upset.

  9. (optioneel) Voer in het tekstvak Beschrijving een beschrijving in van de back-upset.

  10. Geef op wanneer de back-upset verloopt:

    • Als u de back-up set na een specifiek aantal dagen wilt laten verlopen, klikt u op Na (de standaardoptie) en voert u het aantal dagen in waarna de set verloopt na de aanmaak. Deze waarde kan tussen 0 en 99999 dagen zijn; een waarde van 0 dagen betekent dat de back-upset nooit verloopt.

      De standaardwaarde wordt ingesteld in de optie Standaardretentie van back-upmedia (in dagen) van het dialoogvenster Servereigenschappen (paginaDatabase-instellingen). Als u deze optie wilt openen, klikt u met de rechtermuisknop op de servernaam in Objectverkenner en selecteert u eigenschappen; selecteer vervolgens de pagina Database-instellingen.

    • Als u wilt dat de back-upset op een specifieke datum verloopt, klikt u op Open voert u de vervaldatum in.

  11. Kies het type back-upbestemming door op Schijf of Tapete klikken. Als u de paden wilt selecteren van maximaal 64 schijven of tapestations die één mediaset bevatten, klikt u op Toevoegen. De geselecteerde paden worden weergegeven in de Back-up naar lijst.

    Notitie

    Als u een back-upbestemming wilt verwijderen, selecteert u deze en klikt u op verwijderen. Als u de inhoud van een back-upbestemming wilt weergeven, selecteert u deze en klikt u op Inhoud.

  12. Als u de geavanceerde opties wilt weergeven of selecteren, klikt u op Opties in het deelvenster Selecteer een pagina.

  13. Selecteer een optie Media overschrijven door op een van de volgende manieren te klikken:

    • Backup naar de bestaande mediaset

      Klik voor deze optie op Toevoegen aan de bestaande back-upset of alle bestaande back-upsets overschrijven.

      Zie MediaSets, MediaFamilies en Back-upsets (SQL Server)voor informatie over het maken van back-ups van een bestaande mediaset.

      • (optioneel) Selecteer Naam van de mediaset en vervaldatum van de back-upset controleren om ervoor te zorgen dat de back-upbewerking de datum en tijd verifieert waarop de mediaset en back-upset verlopen.

      • (optioneel) Voer in het tekstvak Mediasetnaam een naam in. Als er geen naam is opgegeven, wordt er een mediaset met een lege naam gemaakt. Als u een mediasetnaam opgeeft, wordt de media (tape of schijf) gecontroleerd om te zien of de werkelijke naam overeenkomt met de naam die u hier invoert.

      Als u de medianaam leeg laat en het selectievakje aanvinkt om het met de media te vergelijken, is er sprake van succes wanneer de medianaam op de media ook leeg is.

    • Back-up maken van een nieuwe mediaset en alle bestaande back-upsets wissen

      Voer voor deze optie een naam in het tekstvak Nieuwe mediasetnaam in en beschrijf desgewenst de mediaset in het tekstvak Beschrijving van de nieuwe mediaset.

      Zie MediaSets, MediaFamilies en Back-upsets (SQL Server)voor meer informatie over het maken van een nieuwe mediaset.

  14. (optioneel) Controleer in de sectie Betrouwbaarheid:

  15. Als u een back-up maakt van een tapestation (zoals opgegeven in de sectie Bestemming van de pagina Algemeen), wordt de tape ontladen nadat de back-up optie actief is. Als u op deze optie klikt, wordt de optie De tape terugspoelen voordat u loslaadt ingeschakeld.

    Notitie

    De opties in de sectie Transactielogboek zijn inactief, tenzij u een back-up maakt van een transactielogboek (zoals opgegeven in de sectie Back-uptype van de pagina Algemeen).

  16. SQL Server 2008 (10.0.x) Enterprise en latere versies ondersteunen back-upcompressie. Standaard is het al dan niet comprimeren van een back-up afhankelijk van de waarde van de standaardconfiguratieoptie back-upcompressie van de server. Ongeacht de standaardinstelling op serverniveau kunt u echter een back-up comprimeren door te kiezen voor Back-up comprimerenen kunt u compressie voorkomen door te kiezen voor Back-up niet comprimeren.

    Zie Weergeven of Configureren van de standaardserverconfiguratieoptie voor back-upcompressie als u de huidige standaardinstelling voor back-upcompressie wilt weergeven

Transact-SQL gebruiken

Als u een back-up van een bestand of bestandsgroep wilt maken, gebruikt u de instructie BACKUP DATABASE <file_or_filegroup>. Deze instructie moet minimaal het volgende opgeven:

  • De naam van de database.

  • Een FILE- of FILEGROUP-component voor elk bestand of elke bestandsgroep.

  • Het back-upapparaat waarop de volledige back-up wordt geschreven.

De basissyntaxis Transact-SQL voor een back-up van een bestand is:

BACKUP DATABASE database

{ FILE =logical_file_name | FILEGROUP =logical_filegroup_name } [ ,...f ]

TO backup_device [ ,...n ]

[ MET met_opties [ ,...o ] ] ;

Optie Beschrijving
database Is de database waaruit een back-up wordt gemaakt van het transactielogboek, de gedeeltelijke database of de volledige database.
FILE =logical_file_name Hiermee geeft u de logische naam van een bestand op dat moet worden opgenomen in de back-up van het bestand.
FILEGROUP =logical_filegroup_name Hiermee geeft u de logische naam van een bestandsgroep op die moet worden opgenomen in de bestandsback-up. Onder het eenvoudige herstelmodel is een back-up van een bestandsgroep alleen toegestaan voor een alleen-lezen bestandsgroep.
[ ,...f ] Is een tijdelijke aanduiding die aangeeft dat er meerdere bestanden en bestandsgroepen kunnen worden opgegeven. Het aantal bestanden of bestandsgroepen is onbeperkt.
back-upapparaat [ ,...en ] Hiermee geeft u een lijst van 1 tot 64 back-upapparaten op voor de back-upbewerking. U kunt een fysiek back-upapparaat opgeven of u kunt een bijbehorend logisch back-upapparaat opgeven, indien al gedefinieerd. Als u een fysiek back-upapparaat wilt opgeven, gebruikt u de optie SCHIJF of BAND:

{ DISK | TAPE } =physical_backup_device_name

Zie Back-upapparaten (SQL Server)voor meer informatie.
WITH with_options [ ,...o ] U kunt optioneel een of meer extra opties opgeven, zoals DIFFERENTIAL. Voor een differentiële bestandsback-up is een volledige bestandsback-up als basis vereist.

Zie Een differentiële databaseback-up (SQL Server) makenvoor meer informatie.

Onder het volledige herstelmodel moet u ook een back-up maken van het transactielogboek. Als u een volledige set volledige bestandsback-ups wilt gebruiken om een database te herstellen, moet u ook voldoende logboekback-ups hebben om alle bestandsback-ups te omvatten, vanaf het begin van de eerste bestandsback-up.

Zie Back-up maken van een transactielogboek (SQL Server)voor meer informatie.

Voorbeelden

De volgende voorbeelden maken een back-up van een of meer bestanden van de secundaire bestandsgroepen van de Sales-database. Deze database maakt gebruik van het volledige herstelmodel en bevat de volgende secundaire bestandsgroepen:

  • Een bestandsgroep met de naam SalesGroup1 met de bestanden SGrp1Fi1 en SGrp1Fi2.

  • Een bestandsgroep met de naam SalesGroup2 met de bestanden SGrp2Fi1 en SGrp2Fi2.

Een. Een back-up van twee bestanden maken

In het volgende voorbeeld wordt een differentiële bestandsback-up gemaakt van alleen het SGrp1Fi2-bestand van de SalesGroup1 en het SGrp2Fi2-bestand van de SalesGroup2-bestandsgroep.

--Backup the files in the SalesGroup1 secondary filegroup.  
BACKUP DATABASE Sales  
   FILE = 'SGrp1Fi2',   
   FILE = 'SGrp2Fi2'   
   TO DISK = 'G:\SQL Server Backups\Sales\SalesGroup1.bck';  
GO  

B. Een volledige back-up van de secundaire bestandsgroepen maken

In het volgende voorbeeld wordt een volledige bestandsback-up gemaakt van elk bestand in beide secundaire bestandsgroepen.

--Back up the files in SalesGroup1.  
BACKUP DATABASE Sales  
   FILEGROUP = 'SalesGroup1',  
   FILEGROUP = 'SalesGroup2'  
   TO DISK = 'C:\MySQLServer\Backups\Sales\SalesFiles.bck';  
GO  

C. Een differentiële bestandsback-up maken van de secundaire bestandsgroepen

In het volgende voorbeeld wordt een differentiële bestandsback-up gemaakt van elk bestand in beide secundaire bestandsgroepen.

--Back up the files in SalesGroup1.  
BACKUP DATABASE Sales  
   FILEGROUP = 'SalesGroup1',  
   FILEGROUP = 'SalesGroup2'  
   TO DISK = 'C:\MySQLServer\Backups\Sales\SalesFiles.bck'  
   WITH   
      DIFFERENTIAL;  
GO  

PowerShell gebruiken

De SQL Server PowerShell Provider instellen en gebruiken.

Gebruik de cmdlet Backup-SqlDatabase en geef Files op voor de waarde van de parameter -BackupAction. Geef ook een van de volgende parameters op:

  • Als u een back-up van een specifiek bestand wilt maken, geeft u de parameter -DatabaseFileString op, waarbij Tekenreeks een of meer databasebestanden is waarvan een back-up moet worden gemaakt.

  • Als u een back-up wilt maken van alle bestanden in een bepaalde bestandsgroep, geeft u de parameter -DatabaseFileGroupString op, waarbij Tekenreeks een of meer databasebestandsgroepen is waarvan een back-up moet worden gemaakt.

In het volgende voorbeeld wordt een volledige bestandsback-up gemaakt van elk bestand in de secundaire bestandsgroepen 'FileGroup1' en 'FileGroup2' in de <myDatabase>-database. De back-ups worden gemaakt op de standaardbackuplocatie van de serverinstantie Computer\Instance.

Backup-SqlDatabase -ServerInstance Computer\Instance -Database <myDatabase> -BackupAction Files -DatabaseFileGroup "FileGroup1","FileGroup2" 

Zie ook

Back-up Overzicht (SQL Server)
BACKUP (Transact-SQL)
RESTORE (Transact-SQL)
Back-upproceduregeschiedenis en kopinformatie (SQL Server)
Backup Database (Algemene Pagina)
Back-up maken van de database (Pagina Back-up-opties)
volledige back-ups van bestanden (SQL Server)
differentiële back-ups (SQL Server)
Bestandsherstelacties (Volledig Herstelmodel)
Bestandsherstel (Eenvoudig Herstelmodel)