SQL Server: zapytanie kiedy przywracano bazę z backupu

Jak sprawdzić kiedy przywracano bazę z kopi zapasowej? Jak zapytaniem SQL sprawdzić kiedy odtworzono bazę danych ? W jaki sposób zaytaniem T-SQL zweryfikować typ użytego w odtwarzaniu backupu?

Użyjemy do tego celu tabeli systemowej msdb.dbo.restorehistory a nasze zapytanie nie będzie zbyt skomplikowane:

SELECT  
       [restore_date]
      ,[destination_database_name]
      ,[user_name]
      ,[backup_set_id]
      ,[restore_type] = CASE restore_type
		  when 'D' then 'Full'
		  when 'L' then 'Log'
		  when 'I' then 'Differential database'
		  when 'F' then 'File/Filegroup'
		  when 'P' then 'Partial'
		  when 'G' then 'Differential file'
		  when 'Q' then 'Differnetial partial'
		  END
      ,[replace]
      ,[recovery]
      ,[restart]
  FROM [msdb].[dbo].[restorehistory]SELECT  
       [restore_date]
      ,[destination_database_name]
      ,[user_name]
      ,[backup_set_id]
      ,[restore_type] = CASE restore_type
		  when 'D' then 'Full'
		  when 'L' then 'Log'
		  when 'I' then 'Differential database'
		  when 'F' then 'File/Filegroup'
		  when 'P' then 'Partial'
		  when 'G' then 'Differential file'
		  when 'Q' then 'Differnetial partial'
		  END
      ,[replace]
      ,[recovery]
      ,[restart]
  FROM [msdb].[dbo].[restorehistory]

Wykonanie tego zapytania np w Microsoft SQL Server Management Studio da nam szczegółowe informacje o wykonanych odtworzeniach wszystkich baz danych znajdujących się w instancji SQL. Dowiemy się kto przywracał bazę, jakiego typu przywracania użył, czy podmienił bazę czy restartował instancje .