Microsoft SQL Server
Instantáneas de la base de datos
Buscar..
Observaciones
Una instantánea de la base de datos es una vista estática de solo lectura de una base de datos de SQL Server que es transaccionalmente consistente con la base de datos de origen desde el momento de la creación de la instantánea.
Una instantánea de la base de datos siempre reside en la misma instancia del servidor que su base de datos de origen. A medida que se actualiza la base de datos de origen, la instantánea de la base de datos se actualiza.
Una instantánea difiere de una copia de seguridad ya que el proceso de creación de instantáneas es instantáneo y la instantánea ocupa espacio solo a medida que se aplican los cambios en la base de datos de origen. Una copia de seguridad, por otro lado, almacena una copia completa de los datos en el momento de la creación de la copia de seguridad.
Además, una instantánea proporciona una copia instantánea de solo lectura de la base de datos, mientras que una copia de seguridad debe restaurarse en un servidor para que sea legible (y una vez restaurada también se puede escribir en)
Las instantáneas de la base de datos solo están disponibles en las ediciones Enterprise y Developer.
Crear una instantánea de base de datos
Una instantánea de la base de datos es una vista estática de solo lectura de una base de datos de SQL Server (la base de datos de origen). Es similar a la copia de seguridad, pero está disponible como cualquier otra base de datos para que el cliente pueda consultar la base de datos de instantáneas.
CREATE DATABASE MyDatabase_morning -- name of the snapshot ON ( NAME=MyDatabase_data, -- logical name of the data file of the source database FILENAME='C:\SnapShots\MySnapshot_Data.ss' -- snapshot file; ) AS SNAPSHOT OF MyDatabase; -- name of source database
También puede crear una instantánea de la base de datos con varios archivos:
CREATE DATABASE MyMultiFileDBSnapshot ON (NAME=MyMultiFileDb_ft, FILENAME='C:\SnapShots\MyMultiFileDb_ft.ss'), (NAME=MyMultiFileDb_sys, FILENAME='C:\SnapShots\MyMultiFileDb_sys.ss'), (NAME=MyMultiFileDb_data, FILENAME='C:\SnapShots\MyMultiFileDb_data.ss'), (NAME=MyMultiFileDb_indx, FILENAME='C:\SnapShots\MyMultiFileDb_indx.ss') AS SNAPSHOT OF MultiFileDb;
Restaurar una instantánea de base de datos
Si los datos en una base de datos de origen se dañan o algunos datos incorrectos se escriben en la base de datos, en algunos casos, revertir la base de datos a una instantánea de la base de datos anterior al daño podría ser una alternativa adecuada para restaurar la base de datos desde una copia de seguridad.
RESTORE DATABASE MYDATABASE FROM DATABASE_SNAPSHOT='MyDatabase_morning';
Advertencia: ¡ Esto eliminará todos los cambios realizados en la base de datos de origen desde que se tomó la instantánea!
BORRAR Instantánea
Puede eliminar las instantáneas existentes de la base de datos utilizando la declaración DELETE DATABASE:
DROP DATABASE Mydatabase_morning
En esta declaración debe hacer referencia al nombre de la instantánea de la base de datos.