2015-11-27 96 views
0

在我作为开发人员的工作中,我经常将备份从文件共享恢复到本地sql server。快速比较两个数据库备份文件

最新备份以不规则间隔发布在文件共享上。新的备份与旧的备份具有相同的名称。我将备份文件复制到我的电脑并恢复。

我想知道是否有可能将我的本地备份文件与文件共享中的文件快速比较,他们是否有一些嵌入的校验和或类似内容,因此我知道是否值得复制文件?

+0

as beanfrog提到,很容易用MD5比较。你可以下载这个工具,或者用你自己的例如c#。问题是,如果你想使用命令行工具,编写一个简短的程序或者只是使用sql server能力来比较备份(如果只有后面的更新你的问题才能清楚) – Thomas

+0

那么,问题是一种开放式的。最简单的可能是使用内置到sql server中的东西,但我愿意查看其他选项。 – mortb

回答

2

你可以使用MD5来做到这一点。这是任何文件的校验和。

微软有一个用于制作这些的实用程序,您可以从命令行运行它。这里有一篇文章包含一个链接可供下载: https://support.microsoft.com/en-us/kb/841290

+0

我在我的800 mib备份文件上测试了这一点,它在本地花费了1-2秒,但是当从本地计算机上运行文件共享时,花了一分多钟。这可能是一个计算md5一次并将其与文件共享中的备份一起存储的解决方案,但我更多地寻找快速方法(秒)来检查文件,而无需预先生成某些内容...... – mortb

+0

听起来像问题是网络连接到共享文件。那意味着那个共享所在的服务器上本地工作的解决方案是唯一可行的方法。是SQL服务器的服务器? – Thomas

+0

否备份的位置不在SQL服务器上,它只放在文件共享上。网络是100兆位。从服务器复制备份时,我可以看到我的网卡利用率在1-2分钟内几乎100%。正如我在不同的分支上工作时有时做了很多恢复操作,我想使用脚本来轻松恢复。我希望脚本始终获得最新的备份,但只在必要时从网络复制备份。 – mortb