De makkelijkste manier is eigenlijk een script.
Voer dit uit op productie:
USE MASTER;
BACKUP DATABASE [MyDatabase]
TO DISK = 'C:\temp\MyDatabase1.bak' -- some writeable folder.
WITH COPY_ONLY
Deze ene opdracht maakt een volledige back-up van de database naar een enkel bestand, zonder de productiebeschikbaarheid of het back-upschema, enz. te verstoren.
Om te herstellen, voert u dit gewoon uit op uw ontwikkelaar of test u SQL Server:
USE MASTER;
RESTORE DATABASE [MyDatabase]
FROM DISK = 'C:\temp\MyDatabase1.bak'
WITH
MOVE 'MyDatabase' TO 'C:\Sql\MyDatabase.mdf', -- or wherever these live on target
MOVE 'MyDatabase_log' TO 'C:\Sql\MyDatabase_log.ldf',
REPLACE, RECOVERY
Sla deze scripts vervolgens op elke server op. Gemak met één klik.
Bewerken:
Als je een foutmelding krijgt bij het herstellen dat de logische namen niet overeenkomen, kun je ze als volgt krijgen:
RESTORE FILELISTONLY
FROM disk = 'C:\temp\MyDatabaseName1.bak'
Als u SQL Server-aanmeldingen gebruikt (geen Windows-authenticatie), kunt u dit na elke keer herstellen uitvoeren (op de dev/test-machine):
use MyDatabaseName;
sp_change_users_login 'Auto_Fix', 'userloginname', null, 'userpassword';