You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

导入Azure SQL Database导出的.bacpac时遇System.OutOfMemoryException错误

解决.bacpac导入SSMS时的System.OutOfMemoryException问题

核心原因

该错误大概率是32位版本SSMS的内存限制导致的:32位程序最多只能调用约2GB内存,处理40GB级别的.bacpac文件时,极易触发内存溢出,和磁盘空间充足与否无关。

可行解决办法

  • 切换到64位SSMS:安装64位版本的Microsoft SQL Server Management Studio,它能突破32位的内存限制,充分利用系统可用内存处理大文件。
  • 使用SqlPackage.exe命令行工具导入:这是微软官方的DAC工具,比SSMS图形界面更稳定,适合大文件操作:
    1. 定位工具路径,通常在C:\Program Files\Microsoft SQL Server\150\DAC\bin(版本号随SQL Server/SSMS版本变化,如160对应SSMS 19)
    2. 执行导入命令:
      SqlPackage.exe /Action:Import /SourceFile:"C:\你的文件路径\目标文件.bacpac" /TargetConnectionString:"Server=你的SQL服务器名;Database=新建目标库名;User Id=登录账号;Password=登录密码;"
      
  • 拆分.bacpac(备选):若上述方法仍有问题,可尝试将大.bacpac拆分为小文件后分批导入,但操作繁琐,仅作为最后备选。

额外注意点

  • 确认目标SQL Server版本与Azure SQL Database版本兼容,避免版本不兼容引发的隐性问题。
  • 导入前关闭其他高内存占用程序,为导入操作预留充足内存。

内容的提问来源于stack exchange,提问作者Juan Ignacio Portilla Kitroser

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 12:15:40