Una Snapshot es la representación de una base de datos en un momento determinado.
Esta base de datos es de solo lectura y debe estar en el mismo servidor donde esta la base de datos original. No se puede realizar un backup ni mucho menos restaurarla.
La única manera de crear un Snapshot es por código T-SQL
Una Snapshot solo almacena copias de paginas de datos que fueron modificadas después de realizarse el Snapshot, de esta manera cuando se realiza un consulta sobre el Snapshot el motor de la BD realiza la búsqueda en las paginas de datos de la BD y en las de el Snapshot y de esta manera devuelve los resultados de la fecha correspondiente al Snapshot
La sintaxis es la siguiente
CREATE DATABASE Snapshotname ON
( NAME = Logicalfile , FILENAME =
'Physicalfilename' )
AS SNAPSHOT OF SnapshotThisDatabase;
Ejemplo:
CREATE DATABASE Prueba_10AM ON( NAME = Prueba, FILENAME = 'C:\BD\Prueba_10AM.ss' )AS SNAPSHOT OF Prueba;
Después de creado el Snapshot este puede ser utilizado como método para recuperar información perdida o dañada accidentalmente.
Existen 4 escenarios donde se puede recuperar información de in Snapshot
Registros borrados
INSERT INTO Ventas
SELECT *
FROM
Prueba_10AM.Ventas
Registros modificados
UPDATE ventas
SET Total = (
SELECT Total
FROM
Prueba_10AM.Ventas
WHERE anio = 2009)
WHERE anio = 2009
Objetos borrados
Se genera el script de creación del objeto, se corre en la base de datos y se rellena la tabla con la información del Snapshot
Restaurar todo el Snapshot
RESTORE DATABASE Prueba
FROM DATABASE_SNAPSHOT = 'Prueba_10AM'
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario