在我作为开发人员的工作中,我经常将备份从文件共享恢复到我的本地sql服务器。
最新备份会在文件共享上以不定时间间隔发布。新备份与旧备份的名称相同。我将备份文件复制到我的电脑并恢复它。
我想知道是否可以快速将我的本地备份文件与文件共享上的备份文件进行比较,它们是否有一些嵌入式校验和等等?所以我知道是否值得复制文件?
答案 0 :(得分:3)
您可以使用MD5执行此操作。它是任何文件的校验和。
Microsoft有一个用于制作这些的实用程序,您可以从命令行运行它。这是一篇包含下载链接的文章: https://support.microsoft.com/en-us/kb/841290
答案 1 :(得分:0)
我最终使用创建日期来比较sql备份。由于我在进行开发时使用比较,因此没有必要对文件进行精确比较,而创建MD5只会花费额外的时间。
我用于使本地sql开发服务器保持最新状态的解决方案是使用脚本。我偶尔运行此脚本以获取一个新的数据库,或者每当我需要“干净的”数据库备份时。
该脚本将检查新的备份文件。如果存在新文件,它将把新文件复制到本地计算机。复制后,脚本会将复制文件的创建日期设置为源备份文件的日期。在检查和复制步骤之后,脚本将运行RESTORE
命令。即使没有新文件被复制,还原也会运行。恢复后,脚本将调用RoundhousE(https://github.com/chucknorris/roundhouse)来执行我在GIT文件夹中尚未应用到数据库的所有更改脚本。 (RoundhousE已向数据库添加了一些表,这些表跟踪已运行的脚本)。
这样,我就可以使sql开发服务器保持最新状态。