¿Cómo puedo saber qué modelo de recuperación tiene mi base de datos SQL?

19

¿Hay algún comando SQL que pueda ejecutar para determinar el modelo de recuperación de mi base de datos? Quiero saber si es una recuperación completa o no.

kacalapy
fuente

Respuestas:

22

Alguna variedad en cómo hacerlo ...

SELECT D.recovery_model_desc FROM sys.databases D WHERE name = 'MyDB'

o

SELECT name, D.recovery_model_desc FROM sys.databases D

o

SELECT DATABASEPROPERTYEX('MyDB', 'Recovery')
gbn
fuente
6

Aquí hay un script que hice para mostrarme las rutas de los archivos de la base de datos y los modelos de recuperación:

SELECT 
  A.recovery_model_desc AS [Recovery Model], 
  A.name AS [Database Name], 
  C.physical_name AS [Filename], 
  CAST(C.size * 8 / 1024.00 AS DECIMAL(10,2)) AS [Size in MB], 
  C.state_desc AS [Database State]
FROM sys.databases A
INNER JOIN sys.master_files C ON A.database_id = C.database_id
ORDER BY [Recovery Model], [Database Name], [Filename]
littlefuzz
fuente
3

Esta consulta le proporciona la lista de bases de datos con solo el modelo de recuperación simple;

SELECT name, DATABASEPROPERTYEX(name, 'Recovery') as Recovery_Model
FROM sys.databases
WHERE DATABASEPROPERTYEX(name, 'Recovery') = 'Simple'
ORDER BY name;
Priyanka
fuente