微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Azure Bacpac:如何在 SSMS 中压缩 bacpac

如何解决Azure Bacpac:如何在 SSMS 中压缩 bacpac

是否有更好/更快的方式通过 SSMS 导出 azure 数据库并通过导出数据层应用程序对其进行压缩?在高级设置中,只有选择要导出的表的选项。

当您获取 .bak 文件时,您可以将其压缩为 Backup Options。当您通过 .bacpac 进行操作时,是否有其他选择?

enter image description here

在我们试图为其获取 bacpac 的数据库中,我们在一个表中有一个 varbinary(max) 类型的列,这是导出/数据大小需要很长时间的地方。总而言之,总大小约为 3.5 GB。

解决方法

BACPAC 文件本身是一个带有 BACPAC 扩展名的 ZIP 文件,其中包含来自数据库的元数据和数据。数据为原生 BCP 格式(查看内部内容将 bacpac 重命名为 zip)。

在导出过程中提高性能的考虑:

  • 增加容量 - 从数据库中提取的所有数据都压缩在一个 bacpac 文件中。为了加快速度,您可以增加计算大小。
  • 确保在导出期间停止所有读写活动。
  • 对大型表上的非空值使用聚簇索引。
  • 使用 DBCC SHOW_STATICSTICS 命令检查表是否针对导出进行了优化。
  • 建议使用 SQLPackage 实用程序导出 bacpac 以实现规模和性能。

参考:Export an Azure SQL Database to a BACPAC file

注意:从本地机器导出也会涉及网络延迟,这会导致导出时间增加。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。