Listando informações sobre backups do DPM

O System Center Data Protection Manager (DPM) é uma ferramenta bem eficiente para gerenciar backups, não só do SQL Server, como também de várias outras ferramentas, como Sharepoint, Exchange, etc.

Talvez um ponto fraco dela seja a parte de relatórios que não é muito completa. Tudo bem que você pode fazer muita coisa via powershell ou até fazer seus relatórios no SSRS e importar no próprio DPM, mas nem sempre isso deixa o usuário satisfeito, sem contar o fato de que é preciso entender a estrutura das tabelas, que até onde eu sei não é publicamente documentada.

Esses dias tive a necessidade de montar um relatório de todos os backups feitos em uma determinada data e tive que elaborar uma consulta T-SQL para obter as informações que precisava.

Ela lista as seguintes informações:

  • LogicalPath: a instância de onde o backup foi feito
  • ComponentName: o nome do banco de dados
  • BackupTime: a data e hora em que o backup foi realizado
  • BackupType: o tipo do backup (0 = FULL, 2 = Incremental)
  • IsValid: se o backup está válido ou não
  • Size: tamanho em bytes do backup

A consulta deve ser realizada no banco de dados do DPM, que normalmente tem o nome “DPMDB”. Segue abaixo o código com alguns comentários:

SELECT

RecoverableObject.LogicalPath,

RecoverableObject.ComponentName,

RecoverySource.BackupTime,

RecoverySource.BackupType, /*0 = FULL, 2 = Incremental*/

RecoverySource.IsValid,

RecoverySource.Size

FROM tbl_RM_RecoverySource AS RecoverySource

INNER JOIN tbl_RM_DatasetROMap AS DatasetROMap ON RecoverySource.DatasetSequenceNumber = DatasetROMap.DatasetSequenceNumber

INNER JOIN tbl_RM_RecoverableObject AS RecoverableObject ON RecoverableObject.RecoverableObjectId = DatasetROMap.RecoverableObjectId

WHERE

RecoverableObject.IsDeleted = 0 AND — 0 indicates not deleted

RecoverableObject.DependentRecoverableObjectId IS NULL AND

RecoverySource.IsValid = 1 AND –isValid = 0 são recovery points expirados?! Um job noturno faz a limpeza dos dados antigos.

RecoverySource.IsGCed = 0 AND

DatasetROMap.IsGCed = 0 AND

RecoverableObject.IsGCed = 0 AND

RecoverySource.BackupType = 0 AND –backups FULL

RecoverySource.BackupTime between ‘20120901’ and ‘20120901 23:59:59’ AND

NOT EXISTS( –Caso exista registro na consulta abaixo, o backup foi feito em disco
select 1
from tbl_MM_MediaMap M
where M.datasetid = RecoverySource.DatasetId
)

Esse post foi publicado em Artigos, backup, System Center, Virtual PASS BR. Bookmark o link permanente.

Uma resposta para Listando informações sobre backups do DPM

  1. Pingback: Entendendo e Melhorando seus backups (SQL Server) « Alex Souza

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s