Azure BACPAC备份文件与SQL Server BAK文件有何不同?

时间:2016-09-14 06:02:02

标签: sql-server azure-sql-database

BACPAC和BAK文件在概念上是一样的吗?一个单独的自包含文件,您可以在其中用于备份/还原数据库?

2 个答案:

答案 0 :(得分:7)

BACPAC文件在事务上不一致,并且可能导致数据库中的数据不一致。这就是我的意思:如果您开始创建BACPAC的过程,并且在此过程中,某些数据会在源数据库中更新,那么BACPAC文件可能包含来自表A的数据。下午1:00以及表格X中的数据,因为它是在下午1:03 ...但是如果表格A也在下午1:03更新,那么如果表格A的数据,BACPAC文件中可能不存在这种变化出口过程在下午1:00出口。

从导出执行时没有写入活动的数据源创建BACPAC导出非常重要。

例如,在Azure SQL数据库中,最佳做法是首先创建相关数据库的副本,然后在副本上运行导出到BACPAC(而不是在原始源数据库上)。创建数据库的副本在事务上是一致的,而导出到BACPAC则不是。

答案 1 :(得分:-1)

bacpacBak文件都是数据库的快照,因为它存在于那个时间点。

我能想到的bacpac文件的唯一区别是,它验证了架构绑定,如果它们不正确则失败,除了两者都相同。一个是天蓝色,一个是onpremises < / p>