Zoiets zou je zeker moeten kunnen maken.
Een onderdeel zou een T-SQL zijn CREATE BACKUP
script als een .sql
script, en voer dat uit vanuit een standaard Windows-batch (*.bat
) of commando (*.cmd
) bestand met behulp van de sqlcmd
opdrachtregelprogramma.
Dat zou ongeveer zo zijn:
backup.sql
BACKUP DATABASE YourDatabase
TO DISK = 'Z:\Backup\YourDatabase.bak'
WITH FORMAT;
Het tweede deel zou een .sql-bestand zijn met een T-SQL RESTORE
script, in feite het lezen van de gegevens van een bepaalde locatie op schijf en het herstellen naar die SQL Server-instantie daar.
restore.sql
RESTORE DATABASE YourDatabase
FROM AdventureWorks2008R2Backups
WITH
MOVE 'YourDatabase_Data' TO 'C:\MSSQL\Data\YourDatabase.mdf',
MOVE 'YourDatabase_Log' TO 'C:\MSSQL\Data\YourDatabase_Log.ldf';
GO
Natuurlijk moet u die namen en paden aanpassen aan uw eigen werkelijke vereisten, maar dat zou u slechts een hint moeten geven hoe u aan de slag kunt gaan met dit streven.
Om een van die .sql-scripts uit te voeren met sqlcmd
, heb je iets nodig als:
sqlcmd -S (name of server) -U (login) -P (password) -I (name of script file)
bijv.
sqlcmd -S (local) -U someuser -P top$secret -I backup.sql
Bronnen: