Nel server SQL, un'istantanea del database è una vista statica di sola lettura di un determinato database (database di origine). Un'istantanea cattura lo stato attuale del database al momento dell'acquisizione dell'istantanea. Ciò significa che un'istantanea del database è transazionalmente coerente.
L'istantanea del database si trova nella stessa istanza del database di origine. Sebbene le istantanee forniscano una vista di sola lettura nei dati del database di destinazione, sono dipendenti dalla fonte. Ciò significa che le dimensioni possono crescere man mano che le modifiche vengono applicate al database di origine. Allo stesso modo, l'istantanea diventa anche corrotta se il database di origine è corrotto.
È quindi importante tenere presente che le snapshot del database non servono come backup contro errori come il fallimento del disco o la corruzione del database.
Assicurarsi di prendere backup completi o parziali per il tuo database per proteggerlo da tali guasti.
Discutiamo di come possiamo prendere un'istantanea del database nel server SQL.
Database di esempio e tabella
Prima di discutere come prendere un'istantanea di un database, impostiamo un database di esempio per scopi di illustrazione.
Le domande sono come previste da segue:
Drop database se esiste l'inventario;SQL Server prendi l'istantanea del database
Per prendere un'istantanea di un determinato database, utilizziamo la query di database Crea seguita dalla clausola AS Snapshot.
La sintassi è la seguente:
Crea database database_snapshot_nameAd esempio, per prendere un'istantanea del database "Inventario" che abbiamo creato in precedenza, possiamo eseguire la query come mostrato nel seguente:
Crea database Inventory_Snap suUna volta creato, è possibile visualizzare l'istantanea utilizzando SSMS navigando nel database - istantanea del database.
Lì, hai preso con successo un'istantanea del tuo database. È possibile utilizzare le istantanee per ripristinare il database in un punto specifico in cui è stata presa l'istantanea.
Per ripristinare il database utilizzando l'istantanea, è possibile eseguire la seguente query:
Usa il master;NOTA: Ripristino di un'istantanea del database richiede di utilizzare il database principale prima di eseguire l'operazione.
Esempio:
Usa il master;Questo dovrebbe ripristinare il database dall'istantanea.
Conclusione
Questo post ha coperto il processo di assunzione e ripristino di un'istantanea del database utilizzando i comandi Transact -SQL.
Grazie per aver letto!