Hoe een back-up van een SQL Server Express-database te automatiseren

Dit artikel is bedoeld voor gebruikers die XPressEntry gebruiken met een SQL Server Express-database-engine en de back-up van hun database willen automatiseren. Dit is niet voor gebruikers die een volledige Production SQL Server-backend hebben of voor gebruikers die back-ups plannen van de volledige Windows-omgeving. Productie SQL Server-databases hebben een eenvoudiger hulpmiddel via de module Onderhoud in SQL Server Management Studio.

Deze instructies zijn gebaseerd op dit Microsoft-artikel (https://docs.microsoft.com/en-us/troubleshoot/sql/admin/schedule-automate-backup-database) maar is afgestemd op XPressEntry. Download de links van de onderstaande instructies in plaats van het Microsoft-artikel, omdat sommige downloads zijn bijgewerkt.

Om aan de slag te gaan met het automatiseren van uw back-up, downloadt u de volgende SQL Stored Procedure- https://raw.githubusercontent.com/microsoft/mssql-support/master/sample-scripts/backup_restore/SQL_Express_Backups.sql

Voer deze sql-opdracht uit op uw hoofddatabase. Het maakt een opgeslagen procedure aan die een back-up van uw database maakt wanneer deze wordt aangeroepen.

Als u SQL Express 2016 of later gebruikt, download en installeer dan dit- https://docs.microsoft.com/en-us/sql/tools/sqlcmd-utility​ Eerdere versies kunnen deze stap overslaan, aangezien deze standaard in de SQL-installatie was opgenomen.

Open kladblok of uw favoriete teksteditor. Plak de volgende regel erin.

sqlcmd -S  . \ SQLEXPRESS -E -Q “EXEC sp_BackupDatabases @ databaseName = 'XPressEntry', @ backupLocation = 'C: \ SQLBackups \', @ backupType = 'F'"

Werk de regel hierboven in uw teksteditor bij met de volgende informatie.

. \ SQLEXPRESS - Vervang dit door uw SQLMachineName \ Instance.
@ databaseName = 'YourDatabaseName' XPressEntry is de standaard.
@ backupLocation = 'Vervang door uw mappad waar back-ups worden opgeslagen'
@ backupType = 'F' F voor volledige back-up, D voor differentiële back-up

Sla dit bestand op als XPressEntryBackup.bat op een locatie waar het niet per ongeluk kan worden verwijderd.

Open Taakplanner in Windows. Maak een nieuwe taak waarmee een programma wordt uitgevoerd.

Maak Task

Selecteer de gebruiker waarop de taak zal worden uitgevoerd. Deze gebruiker moet de juiste back-upmachtigingen in uw SQL Server-database of systeembeheerdersrechten hebben. Deze gebruiker heeft ook schrijfbestandsrechten nodig voor de back-uplocatie.

Selecteer vervolgens hoe vaak de taak moet worden uitgevoerd.

Trigger-taak

Selecteer ten slotte de actie die de taak moet uitvoeren. Klik op het tabblad "Acties", vervolgens op de knop "Nieuw" en blader ten slotte naar de locatie waar u hebt opgeslagen XPressEntryBackup.bat

Taak Actie

Maak de taak en voer het wachtwoord in voor het gebruikersaccount waaronder de taak wordt uitgevoerd. Test de taak door deze in de takenlijst te selecteren, er met de rechtermuisknop op te klikken en Uitvoeren te selecteren. Het moet een back-up maken van uw SQL Server-database met het tijdstempel van de back-up.