一尘不染

为什么 .bacpac 文件比同一个数据库的 .bak 文件小?

sql-server

我一直在备份我的 SQL Server 2014 Express 数据库以导入其他服务器,并.bacpac注意到.bak.

为什么一个.bacpac文件比同一个数据库的文件那么小.bak

感谢您的任何见解!


阅读 148

收藏
2022-10-31

共1个答案

一尘不染

  • .bacpac文件 = 架构 + 数据。请注意,数据是使用本机格式(人类无法读取)进行 BCP 输出的。
  • 您可以将其重命名.bacpac.zip以查看实际内容。
  • 您可以使用...DAC\bin\sqlpackage.exe命令行以编程方式提取.bacpac内容。
  • 它是一个快照,包括来自 SQL Server 或 Azure SQL 数据库的用户数据 + 架构。

-

  • 备份(通常具有.bak扩展名) = 完整的数据库备份包含数据库的完整副本,并提供可以将数据库还原到的单个时间点。完整备份包含一些事务日志记录,以便可以使恢复的组件(数据库、文件或文件组)在事务上保持一致。

ABACPAC不能替代完整备份。它只是一个快照,可用于将数据库从一台服务器移动到另一台服务器(或云)并以开放格式归档现有数据库

根据我的测试,以下是结果

在此处输入图像描述

2022-10-31