«

»

jun 19

Obtendo informações importantes de todas as bases

Hoje vamos obter informações importantes como Recovery Model, Log Reuse, Log Size, Log Used, Compatibility Level, Page Verify, Auto Shrink entre algumas outras.

 

Vamos utilizar o script abaixo para obter estas informações que podem ser utilizadas para documentação, checagem, análise, ou seja, são realmente úteis.

 

SELECT db.[name] AS [Database Name], db.recovery_model_desc AS [Recovery Model],
db.log_reuse_wait_desc AS [Log Reuse Wait Description],
ls.cntr_value AS [Log Size (KB)], lu.cntr_value AS [Log Used (KB)],
CAST(CAST(lu.cntr_value AS FLOAT) / CAST(ls.cntr_value AS FLOAT)AS DECIMAL(18,2)) * 100 AS [Log Used %],
db.[compatibility_level] AS [DB Compatibility Level],
db.page_verify_option_desc AS [Page Verify Option], db.is_auto_create_stats_on, db.is_auto_update_stats_on,
db.is_auto_update_stats_async_on, db.is_parameterization_forced,
db.snapshot_isolation_state_desc, db.is_read_committed_snapshot_on,
db.is_auto_close_on, db.is_auto_shrink_on
FROM sys.databases AS db
INNER JOIN sys.dm_os_performance_counters AS lu
ON db.name = lu.instance_name
INNER JOIN sys.dm_os_performance_counters AS ls
ON db.name = ls.instance_name
WHERE lu.counter_name LIKE N’Log File(s) Used Size (KB)%’
AND ls.counter_name LIKE N’Log File(s) Size (KB)%’
AND ls.cntr_value > 0 OPTION (RECOMPILE);

 

Vamos ver o resultado disso:

 

 

Na primeira parte do resultado, podemos observar informações relacionadas a utilização do Transaction Log (que depende do Recovery Model) de todas as bases.

 

Arraste a barra inferior para a direita para vermos o restante das informações:

 

 

Agora sabemos se as estatísticas estão sendo criadas e atualizadas automaticamente, se é síncrona ou assíncrona, se há parametrização, snapshot isolation, se o auto close está habilitado e se o auto shrink está sendo realizado.

Estas informações são bem úteis na hora de conferir suas configurações ou conhecer um novo ambiente, além de ficar bem prático para documentar. Junte-as com as informações obtidas com o post Quais são as configurações atuais do SQL e com as informações obtidas em Listar todos os arquivos da instância e já terá uma série de informações úteis como no caso de fazer uma recuperação de desastres, etc.

 

 

 

 .

1 comentário

  1. Angelo Maximo

    Muito bom Mercante, esse script ajuda principalmente quando há um número grande de bases e precisamos, por exemplo, saber quais são as bases com logs muito grandes.
    Parabéns.

Deixe uma resposta