Oi,
Para resumir o backup podemos dizer, Cópia de Dados Armazenados em Disco ou Fita Em caso de erros ou desastres inesperados, esta cópia pode ser definida como Restauração de Dados e prevenção de perda de dados.
Em empresas de grande porte ou em projetos importantes, a perda de dados causa eventos materiais e causadores de reputação, portanto as empresas devem sempre manter mais de uma cópia dos Bancos de Dados ou Arquivos para um ou mais.
As causas de perda de dados que podem ocorrer em empresas e sistemas são as seguintes.
- Falha de mídia
- Erros baseados no usuário. Soltar tabela
- Erros de disco. Corrupção de disco
- Desastres naturais. Inundações do terremoto.
O backup deve ser verificado todos os dias pelo SQL Server DBA com o seguinte script.
SELECT DB.name AS Database_Name ,MAX(DB.recovery_model_desc) AS Recovery_Model ,MAX(BS.backup_start_date) AS Last_Backup ,MAX(CASE WHEN BS.type = 'D' THEN BS.backup_start_date END) AS Last_Full_backup ,SUM(CASE WHEN BS.type = 'D' THEN 1 END) AS Count_Full_backup ,MAX(CASE WHEN BS.type = 'L' THEN BS.backup_start_date END) AS Last_Log_backup ,SUM(CASE WHEN BS.type = 'L' THEN 1 END) AS Count_Log_backup ,MAX(CASE WHEN BS.type = 'I' THEN BS.backup_start_date END) AS Last_Differential_backup ,SUM(CASE WHEN BS.type = 'I' THEN 1 END) AS Count_Differential_backup ,MAX(CASE WHEN BS.type = 'F' THEN BS.backup_start_date END) AS LastFile ,SUM(CASE WHEN BS.type = 'F' THEN 1 END) AS CountFile ,MAX(CASE WHEN BS.type = 'G' THEN BS.backup_start_date END) AS LastFileDiff ,SUM(CASE WHEN BS.type = 'G' THEN 1 END) AS CountFileDiff ,MAX(CASE WHEN BS.type = 'P' THEN BS.backup_start_date END) AS LastPart ,SUM(CASE WHEN BS.type = 'P' THEN 1 END) AS CountPart ,MAX(CASE WHEN BS.type = 'Q' THEN BS.backup_start_date END) AS LastPartDiff ,SUM(CASE WHEN BS.type = 'Q' THEN 1 END) AS CountPartDiff FROM sys.databases AS DB LEFT JOIN msdb.dbo.backupset AS BS ON BS.database_name = DB.name WHERE ISNULL(BS.is_damaged, 0) = 0-- exclude damaged backups GROUP BY DB.name ORDER BY Last_Backup desc;