Delen via


Een back-up maken van een transactielogboek

van toepassing op:SQL Server-

In dit artikel wordt beschreven hoe u een back-up maakt van een transactielogboek in SQL Server met behulp van SQL Server Management Studio, Azure Data Studio, Transact-SQL of PowerShell.

Beperkingen

De BACKUP-instructie is niet toegestaan in een expliciete of impliciete-transactie. Een expliciete transactie is een transactie waarin u zowel het begin als het einde van de transactie expliciet definieert.

Back-ups van transactielogboeken van de master systeemdatabase worden niet ondersteund.

Aanbevelingen

Als een database gebruikmaakt van het volledige of bulksgewijs vastgelegde herstelmodel, moet u regelmatig een back-up van het transactielogboek maken om uw gegevens te beveiligen en om te voorkomen dat het transactielogboekinvult. Hierdoor wordt het logboek afgekapt en wordt het herstellen van de database naar een bepaald tijdstip ondersteund.

Bij elke geslaagde back-upbewerking wordt standaard een vermelding toegevoegd aan het SQL Server-foutenlogboek en in het gebeurtenislogboek van het systeem. Als u regelmatig een back-up van het logboek maakt, worden deze geslaagde berichten snel verzameld, wat resulteert in enorme foutenlogboeken, waardoor andere berichten moeilijk kunnen worden gevonden. 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

Controleer voordat u begint op de juiste machtigingen, zowel op exemplaarniveau als op opslagniveau.

Machtigingen voor database-engine

De benodigde machtigingen voor BACKUP DATABASE en BACKUP LOG worden standaard verleend aan leden van de sysadmin vaste serverfunctie en de db_owner en db_backupoperator vaste databaserollen.

Back-up van apparaatmachtigingen

Eigendoms- en machtigingsproblemen in het fysieke bestand van het back-upapparaat kunnen een back-upbewerking verstoren. Het besturingssysteemaccount waaronder de SQL Server-service wordt uitgevoerd, moet kunnen lezen van en schrijven naar het apparaat. Problemen met machtigingen voor het fysieke bestand van het back-upapparaat zijn niet duidelijk voor u totdat u toegang probeert te krijgen tot de fysieke resource wanneer u een back-up of herstel probeert te maken.

Notitie

sp_addumpdevice, waarmee een vermelding voor een back-upapparaat in de systeemtabellen wordt toegevoegd, worden geen machtigingen voor bestandstoegang gecontroleerd.

SQL Server Management Studio gebruiken

Notitie

De stappen in deze sectie zijn ook van toepassing op Azure Data Studio.

  1. Nadat u verbinding hebt gemaakt met het juiste exemplaar van de SQL Server Database Engine, selecteert u in Objectverkenner 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 selecteer Back-up. Het dialoogvenster Database back-up wordt weergegeven.

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

  5. Controleer of het herstelmodel FULL of BULK_LOGGEDis.

  6. Selecteer transactielogboekin het keuzelijst voor back-up.

  7. (optioneel) Selecteer Alleen kopie-back-up om een back-up te maken die alleen gekopieerd is. Een copy-only back-up is een SQL Server-back-up die onafhankelijk is van de volgorde van conventionele SQL Server-back-ups. Zie copy-only back-ups.

    Notitie

    Wanneer de optie Differentiële is geselecteerd, kunt u geen back-up met alleen kopiëren maken.

  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-upset na een bepaald aantal dagen wilt laten verlopen, selecteert u Na (de standaardoptie) en voert u het aantal dagen in nadat de set is gemaakt dat de set verloopt. 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 Standaardretentie van back-upmedia (in dagen) optie in het dialoogvenster Servereigenschappen (Database-instellingen pagina). Als u dit dialoogvenster wilt openen, klikt u met de rechtermuisknop op de servernaam in Objectverkenner en selecteert u eigenschappen; selecteer vervolgens de pagina Database-instellingen.

    • Als u de back-upset op een specifieke datum wilt laten verlopen, selecteert u Open voert u de datum in waarop de set verloopt.

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

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

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

  13. Selecteer een optie Overschrijf media door een van de volgende opties te selecteren:

    • Een back-up naar de bestaande mediaset maken

      Selecteer voor deze optie Toevoegen aan de bestaande back-upset of Alle bestaande back-upsets overschrijven, zie Mediasets, Mediafamilies en Back-upsets (SQL Server).

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

      • (optioneel) Voer een naam in in het tekstvak mediasetnaam. 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 te vergelijken met de media, is het een succes als de naam 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 tekstvak in en beschrijf desgewenst de mediaset in het Beschrijving van de nieuwe mediaset tekstvak, zie Mediasets, Mediafamilies en Back-upsets (SQL Server).

  14. In de sectie Betrouwbaarheid, optioneel, controleert u:

  15. In de sectie Transactielogboek:

    • Voor routinematige logboekback-ups, behoud de standaardselectie door het transactielogboek in te korten door inactieve vermeldingen te verwijderen.

    • Als u een back-up wilt maken van de staart van het logboek (het actieve logboek), vinkt u de optie Aanmaken back-up van de logboekstaart aan en laat u de database in de herstelmodus.

      Er wordt een tail-log back-up gemaakt nadat het back-uppen van de staart van de log mislukt is, om verlies van werk te voorkomen. Maak een back-up van het actieve logboek (een back-up van tail-log) na een fout, voordat u de database gaat herstellen of wanneer er een failover naar een secundaire database wordt uitgevoerd. Het selecteren van deze optie is gelijk aan het opgeven van de optie NORECOVERY in de BACKUP LOG-instructie van Transact-SQL.

      Zie Tail-log back-ups (SQL Server)voor meer informatie over back-ups van tail-logboeken.

  16. Als u een back-up maakt naar een tapestreamer (zoals opgegeven in de sectie Bestemming van de pagina Algemeen), is de optie De tape ontladen na de back-up actief. Als u deze optie selecteert, wordt de optie De tape terugspoelen voordat wordt geactiveerd.

  17. Of een back-up compressie is is standaard afhankelijk van de waarde van de standaardinstelling voor back-upcompressie serverconfiguratieoptie. Ongeacht de standaardinstelling op serverniveau kunt u echter een back-up comprimeren door back-up comprimerenaan te vinken, en u kunt compressie voorkomen door back-up niet comprimerenaan te vinken.

    Back-upcompressie wordt ondersteund op SQL Server 2008 (10.0.x) Enterprise en latere versies, en SQL Server 2016 (13.x) Standard met Service Pack 1 en latere versies.

    Zie De standaardwaarde voor back-upcompressie (serverconfiguratieoptie) weergeven of configurerenals u de huidige standaard voor back-upcompressie wilt weergeven.

    Als u het back-upbestand wilt versleutelen, schakelt u het selectievakje Back-up versleutelen in. Selecteer een versleutelingsalgoritmen voor het versleutelen van het back-upbestand en geef een certificaat of asymmetrische sleutel op. De beschikbare algoritmen voor versleuteling zijn:

    • AES 128
    • AES 192
    • AES 256
    • Driedubbele DES

Gebruik Transact-SQL

Voer de INSTRUCTIE BACKUP LOG uit om een back-up te maken van het transactielogboek, met de volgende informatie:

  • De naam van de database waartoe het transactielogboek behoort waarvan u een back-up wilt maken.
  • Het backupapparaat waarop de back-up van het transactielogboek wordt geschreven.

Belangrijk

In dit voorbeeld wordt de AdventureWorks2022-database gebruikt, die gebruikmaakt van het eenvoudige herstelmodel. Voordat u een volledige databaseback-up maakt, is de database zo ingesteld dat het volledige herstelmodel wordt gebruikt om logboekback-ups toe te laten.

Zie Het herstelmodel van een database (SQL Server) weergeven of wijzigenvoor meer informatie.

In dit voorbeeld wordt een back-up van het transactielogboek voor de AdventureWorks2022-database gemaakt naar het eerder gemaakte back-upapparaat MyAdvWorks_FullRM_log1.

BACKUP LOG AdventureWorks2022
   TO MyAdvWorks_FullRM_log1;
GO

PowerShell gebruiken

De SQL Server PowerShell Provider instellen en gebruiken. Gebruik de cmdlet Backup-SqlDatabase en geef log- op voor de waarde van de parameter -BackupAction.

In het volgende voorbeeld wordt een logboekback-up van de <myDatabase>-database gemaakt naar de standaardback-uplocatie van de serverinstantie Computer\Instance.

Backup-SqlDatabase -ServerInstance Computer\Instance -Database <myDatabase> -BackupAction Log