将SQL Server数据库作为.bak或.mdf分发有什么优缺点?

Mas*_*iti 4 sql-server sql-server-2008

我们正在努力生成一个将分发给多个第三方的数据库.我们还将继续重新生成此数据库,重新分发它,并且这些第三方将需要使用新版本覆盖其现有数据库副本.

我正在尝试决定是否要临时分离数据库,制作.mdf的副本,然后发送该副本,或者我是否应该只对数据库进行完整备份,然后将.bak发送出去.

我可以看到的主要区别是,要分发.mdf,您必须临时分离数据库,以便您可以复制它.

每种格式的其他优点/缺点是什么?

分配一个在另一个上有安全隐患吗?

最初导入一种格式比另一种格式更容易吗?

谢谢.

Rem*_*anu 7

都不是.分发数据库更改的正确方法是通过升级脚本,否则使用数据库的第三方将丢失数据库中包含的实际数据.

对于第三方永远不会更改数据的情况(即,数据库仅在那些站点上读取),则通过备份文件进行分发是可行的.MDF完全不可能,首先是因为MDF不是整个数据库:除了重新创建一个连贯的数据库之外,至少还需要LDF.在腐败的数据库中,只需将MDF与相应的LDF连接就会导致大多数情况.除了不正确之外,MDF分发效率低(BAK文件小于相应的MDF,因为它们不包含未分配的页面),并且MDF操作也需要在文件复制期间将数据库置于脱机状态.

  • 而且:根据文件组的设置方式,您可能有一个.MDF,多个.NDF(非主要文件组)和.LDF(用于日志) - 所有这些都是数据库运行所必需的! (2认同)