Ric*_*icj 2 sql-server backup data-integrity
我被指派每两周检查一次来自 sql server 的数据库备份的完整性。我是这个领域的新手,所以我不知道如何正确地完成这项任务。如果有人(黑客)修改了数据库备份里面的数据,这是否是文件完整性的一部分?有没有办法检查它?
有句老话...
验证备份良好/可用的唯一方法是还原它。重复——直到你恢复它,你才知道你有一个好的备份!
我强烈建议您比每两周更频繁地检查您的备份——至少每周一次,最好比这更频繁。
在我的商店,我们有一个“播放”服务器,我们用它来自动恢复我们认为“重要”的数据库的最新 FULL/DIFF。我们使用 Windows 任务计划程序来启动一个包含多个 SQLCMD 步骤的 bat 文件。成功恢复后,我们运行完整的 DBCC CHECKDB WITH ALL_ERRORMSGS,NO_INFOMSGS 并将结果输出到 txt 文件。然后我们将输出的 txt 文件通过电子邮件发送到数据库组进行评估。
这个过程测试两件事
以下是我们的 bat 文件中的一些示例步骤
SQLCMD -S Localhost -Q "IF EXISTS (SELECT name FROM sys.databases WHERE name = N'<YourDatabase>') DROP DATABASE [<YourDatabase>]" -E -b -d master
SQLCMD -S Localhost -Q "EXEC SCUTILITY.dbo.RestoreProdForDBCC" -E -b -d SCUTILITY
SQLCMD -S Localhost -Q "print 'Starting DBCC ' + convert(char,getdate(),121);dbcc checkdb ('<YourDatabase>') WITH ALL_ERRORMSGS,NO_INFOMSGS;print 'Completed DBCC ' + convert(char,getdate(),121)" -E -b -d master -o "F:\DBCC\dbcc_output.txt"
SQLCMD -S Localhost -Q "EXEC msdb.dbo.sp_send_dbmail @profile_name='SqlServerEmailProfile', @recipients='<DatabaseTeam>', @subject='DBCC has completed!', @file_attachments='F:\DBCC\dbcc_output.txt';" -E -b -d msdb
Run Code Online (Sandbox Code Playgroud)
查看这些优秀的帖子,了解有关数据库完整性检查的更多信息:
| 归档时间: |
|
| 查看次数: |
1104 次 |
| 最近记录: |