Como posso saber qual modelo de recuperação meu banco de dados SQL possui?

19

Existe um comando SQL que eu possa executar para determinar o modelo de recuperação do meu banco de dados? Eu quero saber se a sua recuperação completa ou não.

kacalapy
fonte

Respostas:

22

Alguma variedade de como fazê-lo ...

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

ou

SELECT name, D.recovery_model_desc FROM sys.databases D

ou

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

Aqui está um script que eu fiz para me mostrar caminhos de arquivos de banco de dados e modelos de recuperação:

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
fonte
3

Esta consulta fornece a lista de bancos de dados apenas com o modelo de recuperação simples;

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