Saltar al contenido

Diario de un DBA

Problemas y soluciones para SQL Server

Menú
  • Inicio
  • Consultoria gratuita
  • tempdb
  • Curso Azure DP-300
  • Rendimiento
  • Seguridad
  • Sobre Mi
Menú

Comprobar los últimos backups tomados en una instancia SQL Server

Publicada el junio 29, 2024agosto 17, 2024 por solracamo

Contenido del post:

Toggle
  • Script para comprobar los últimos backups completados en SQL Server
  • ¿Todavía tienes dudas?

Los backups son probablemente una de las partes más importantes de nuestra instancia SQL Server y también la forma más sencilla de afrontar un problema con la recuperación de las bases de datos en caso de que sea necesario.

Saber hacer una configuración óptima de los backups es un conocimiento FUNDAMENTAL para cualquier administrador de bases de datos.

Script para comprobar los últimos backups completados en SQL Server

Dicho esto, a veces tenemos que hacer comprobaciones de cuándo y cómo se han tomado los backups, por lo que hoy os traigo un script que nos mostrará toda la información que necesitamos para hacer un análisis de la configuración de los backups de una instancia.

Este script trae algunas líneas opcionales que pueden ser descomentadas para filtrar cosas como el tipo de backup o el nombre de la base de datos.

SELECT TOP 100
s.backup_start_date as 'Start Date',
s.backup_finish_date as 'Full Date',
CONVERT(varchar, s.backup_finish_date, 103) as 'Date',
CONVERT(VARCHAR(8),s.backup_finish_date,108) as 'Time',
DATEDIFF(minute, s.backup_start_date, s.backup_finish_date) as 'Duration (minutes)',
s.database_name as 'Database Name',
CAST(s.backup_size / (1024*1024) as int)  as 'Backup Size (MBs)',
CASE
WHEN (s.[type] = 'D' AND s.is_copy_only = 0) THEN 'Full'
WHEN (s.[type] = 'D' AND s.is_copy_only = 1) THEN 'Full - CopyOnly'
WHEN (s.[type] = 'I') THEN 'Differential database'
WHEN (s.[type] = 'L') THEN 'Log'
WHEN (s.[type] = 'F') THEN 'File or filegroup'
WHEN (s.[type] = 'G') THEN 'Differential file'
WHEN (s.[type] = 'P') THEN 'Partial'
WHEN (s.[type] = 'G') THEN 'Differential partial'
ELSE NULL
END AS BackupType,
m.physical_device_name as 'Backup Device',
t.physical_device_name as 'Differential base - Device',
t.backup_finish_date as 'Differential base - Full Date',
s.[user_name] as [User]
FROM msdb.dbo.backupset s
INNER JOIN msdb.dbo.backupmediafamily m ON s.media_set_id = m.media_set_id
LEFT JOIN
(SELECT ss.backup_set_uuid, ss.backup_finish_date, mm.physical_device_name
FROM msdb.dbo.backupset ss
INNER JOIN msdb.dbo.backupmediafamily mm ON ss.media_set_id = mm.media_set_id
) as t
ON s.differential_base_guid = t.backup_set_uuid
WHERE 1=1
--AND s.type = 'D' -- Backups full
--AND s.type = 'I' -- Backups diferencial
--AND s.type = 'L' -- Backups log
--AND s.database_name = '' -- Comprobar una base de datos en particular
--AND s.database_name = DB_NAME() -- Comprobar la base de datos actual
order by s.backup_start_date DESC
GO

El resultado de este script nos mostrará la información de la siguiente manera (he censurado la información sensible y privada).

¿Todavía tienes dudas?

Si este post no ha solucionado tu problema o todavía tienes dudas sobre este o cualquier otro asunto relacionado con SQL Server, puedes enviarme un mensaje o solicitar una consultoría gratuita haciendo clic aquí.

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Consultoria Gratis

¿Tienes un problema o una consulta sobre tu servidor SQL Server? ¿Necesitas hacer algún tipo de mantenimiento o tarea en tu instancia, pero no tienes claro cómo hacerlo?

Envíame un email con tu caso y te contestaré lo antes posible de forma totalmente gratuita.

Puedes utilizar el formulario que encontrarás haciendo click aquí.

Sobre mi

Efectivamente, soy un muñeco de slack con la camiseta de Fernando Alonso en Renault, pero también soy una DBA mid level que vive y trabaja en inglaterra como consultor SQL Server.

El objetivo de este blog es escribir los problemas con los que me he ido encontrando y cómo los solucioné. Si estas soluciones han servido para mí, es posible que también lo hagan para ti, ¿no?

Otras soluciones

  • Recuperar la password de la cuenta SA en SQL Serveroctubre 5, 2024
  • Always On en SQL Server. Todo lo que necesitas saberagosto 24, 2024
  • Recuperar una tabla borrada en SQL Serveragosto 18, 2024
  • Mover bases de datos a otro disco en SQL Serveragosto 11, 2024
  • Comprobar los últimos backups tomados en una instancia SQL Serverjunio 29, 2024
  • Comprobar fragmentación en SQL Serverjunio 23, 2024

Curso Azure DP-300 Gratis

  • Azure DP-300 curso en Español – Parte 1noviembre 17, 2022
  • Crear una máquina virtual con SQL server en Azurenoviembre 17, 2022
  • Crear un servidor SQL Server en Azure.noviembre 22, 2022
  • Azure DP-300 curso en Español – Parte 2noviembre 24, 2022
  • Azure DP-300 curso en Español – Parte 3diciembre 1, 2022
  • Azure DP-300 curso en Español – Parte 4diciembre 14, 2022

Consulta las páginas que nadie consulta:
Privacidad
Cookies

Escríbeme!
Contacto

© 2025 Diario de un DBA
x