我有几个远程数据库,托管在我的网络主机上。对于mysql,我使用周期性mysqldump,对于MSSQL,我使用bcp备份它们。 如何验证这些备份?如何确保备份不是部分的(通过公共网络完成)。
答案 0 :(得分:2)
在SQL Server中,您可以使用RESTORE命令和VERIFYONLY选项来验证数据库备份文件的内容。
有关详细信息,请参阅以下联机丛书参考:
http://msdn.microsoft.com/en-us/library/ms188902.aspx
对SQL Server备份的进一步考虑,在执行数据库备份之前执行数据库的DBCC CHECKDB被认为是一种良好的做法,以确保/验证数据库数据的完整性。但这可能不实用,具体取决于数据库的大小。
联机丛书参考:DBCC CHECKDB
在BACKUP DATABASE操作中执行CHECKSUM也被认为是一种很好的做法。
请参阅在线图书:BACKUP DATABASE
答案 1 :(得分:2)
最终,验证备份的方法是将其用于还原。酸测试是:您可以从备份中重新创建一个完全正常工作的数据库。理想情况下,您可以在除备份之外的某台计算机上创建它 - 在销毁备份机器后模拟恢复。
某些DBMS提供了允许您模拟此类恢复的工具。
答案 2 :(得分:1)
编写一个小的PHP脚本(或类似的),打印每个表中的记录数,并将其安装到您的网站上。下载备份时,将它们加载到本地数据库并在本地对该数据库运行相同的脚本,并将结果与Web上的结果进行比较。