【发布时间】:2011-12-15 20:22:03
【问题描述】:
我正在使用以下行来备份 Microsoft SQL Server 2008 数据库:
BACKUP DATABASE @name TO DISK = @fileName WITH COMPRESSION
鉴于数据库没有变化,重复执行这一行会产生大小相同但内部大不相同的文件。
如何为相同的未更改数据库创建重复的 SQL Server 备份,以提供相同的字节精确文件?我猜想简单的BACKUP DATABASE 调用会在备份媒体中添加一些时间戳或一些其他元信息,有没有办法禁用或删除这个添加?
或者,如果不可能,是否有一种相对简单的方法来比较 2 个备份,看看它们是否会恢复到完全相同的数据库状态?
更新:对于备份比较,我的观点是我每天要备份无数数据库,但大多数数据库不会经常更改。他们中的大多数人每年更换几次是正常的。所以,基本上,对于所有其他 DBMS(MySQL、PostgreSQL、Mongo),我使用以下算法:
- 进行新的每日备份
- 新备份与最新旧备份的区别
- 如果数据库未更改(即备份匹配),请删除我刚刚创建的新每日备份
该算法适用于我们之前遇到的所有 DBMS,但遗憾的是,由于不可重复的 MSSQL 备份,它失败了。
【问题讨论】:
标签: sql-server backup database-backups