Il modo più semplice è in realtà uno script.
Eseguilo in produzione:
USE MASTER;
BACKUP DATABASE [MyDatabase]
TO DISK = 'C:\temp\MyDatabase1.bak' -- some writeable folder.
WITH COPY_ONLY
Questo comando esegue una copia di backup completa del database su un singolo file, senza interferire con la disponibilità della produzione o la pianificazione del backup, ecc.
Per ripristinare, eseguilo sul tuo dev o prova 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
Quindi salva questi script su ciascun server. Comodità con un clic.
Modifica:
se ricevi un errore durante il ripristino che i nomi logici non corrispondono, puoi ottenerli in questo modo:
RESTORE FILELISTONLY
FROM disk = 'C:\temp\MyDatabaseName1.bak'
Se utilizzi gli accessi di SQL Server (non l'autenticazione di Windows) puoi eseguirlo dopo il ripristino ogni volta (sulla macchina di sviluppo/test):
use MyDatabaseName;
sp_change_users_login 'Auto_Fix', 'userloginname', null, 'userpassword';