En el servidor SQL, una instantánea de la base de datos es una vista de solo lectura y estática de una base de datos dada (base de datos de origen). Una instantánea captura el estado actual de la base de datos en el momento de la captura de instantáneas. Esto significa que una instantánea de la base de datos es transaccionalmente consistente.
La instantánea de la base de datos se encuentra en la misma instancia que la base de datos de origen. Aunque las instantáneas proporcionan una vista de solo lectura en los datos de la base de datos de destino, son dependientes de la fuente. Esto significa que el tamaño puede crecer a medida que los cambios se aplican a la base de datos de origen. Del mismo modo, la instantánea también se corrompe si la base de datos de origen está dañada.
Por lo tanto, es importante tener en cuenta que las instantáneas de la base de datos no sirven como copias de seguridad contra errores como falla en el disco o corrupción de la base de datos.
Asegúrese de tomar copias de seguridad completas o parciales para su base de datos para proteger contra tales fallas.
Discutamos cómo podemos tomar una instantánea de la base de datos en el servidor SQL.
Muestra de base de datos y tabla
Antes de discutir cómo tomar una instantánea de una base de datos, configuremos una base de datos de muestra para fines de ilustración.
Las consultas son las que se proporcionan en lo siguiente:
Drop Base de datos si existe el inventario;SQL Server Toma la instantánea de la base de datos
Para tomar una instantánea de una base de datos dada, utilizamos la consulta de la base de datos Crear seguida de la cláusula de instantánea como.
La sintaxis es la siguiente:
Crear base de datos Database_snapshot_namePor ejemplo, para tomar una instantánea de la base de datos "Inventario" que creamos anteriormente, podemos ejecutar la siguiente consulta:
Crear Inventory_Snap de la base de datosSQL Server View de instantánea de la base de datos - SSMS
Puede ver la instantánea de la base de datos en el estudio de administración de SQL Server navegando a las bases de datos - instantáneas de la base de datos.
SQL Server View de instantánea de la base de datos - Transact -SQL
Para ver la instantánea de la base de datos utilizando la consulta Transact-SQL, ejecute lo siguiente:
Seleccionar nombre, database_id, source_database_id desde sys.bases de datos;Esto debería devolver las bases de datos en el servidor. La columna Source_Database_ID muestra la base de datos de origen para una instantánea dada.
Un ejemplo es el siguiente:
Como se muestra en la tabla anterior, la base de datos Inventory_snap apunta a la base de datos de inventario como fuente.
Instantánea de la base de datos SQL Server Drop - Transact -SQL
Para eliminar una instantánea de la base de datos, puede usar la consulta como se muestra en lo siguiente:
Drop Base de datos Database_snapshot_name;Ejemplo:
Drop de la base de datos Inventory_snap;Tenga en cuenta que el comando de base de datos DROP termina todas las conexiones que están utilizando la base de datos Inventory_Snap.
Conclusión
En esta publicación, aprendió cómo trabajar con las instantáneas de la base de datos en el servidor SQL, incluida la creación de nuevas instantáneas de la base de datos, ver las instantáneas de la base de datos y eliminar las instantáneas del servidor.
Gracias por leer!