数据层导出到BacPac失败

时间:2018-08-24 10:14:44

标签: sql-server bacpac

我需要导出整个SQL Server数据库-模式,表,数据等,并尝试使用以下方法。

使用管理员凭据登录到SSMS,找到相关数据库,右键单击数据库,选择“任务” >>“导出数据层应用程序”。然后在服务器上选择一个位置来保存.bacpac文件,以导出到另一个网络上的另一个服务器。该过程可以开始,但随后失败,并且错误报告中有数百条错误说明,

“错误SQL71562:验证元素[dbo]。[capt_blockperiod]:错误:触发器:[dbo]。[capt_blockperiod]对对象[master]。[dbo]。[sysprocesses]。[hostname]的引用未解决。从此平台创建软件包时不支持引用”

我如何解决这些问题而不请逐一讨论?是否有导出整个数据库的替代方法来避免这些问题?

1 个答案:

答案 0 :(得分:0)

尝试在控制台中生成bacpac

cd C:\Program Files (x86)\Microsoft SQL Server\<SQL_VERSION>\DAC\bin

sqlpackage.exe /a:Export /ssn:myServer /sdn:myDatabase /tf:C:\<MY_PATH>\myBacpac.bacpac

如果登录的用户正在执行脚本,则将使用集成Windows身份验证。因此,无需指定用户名或密码。

您确定要bacbac而不是dacpac吗?

对于dacpac:

cd C:\Program Files (x86)\Microsoft SQL Server\<SQL_VERSION>\DAC\bin
sqlpackage /Action:Extract /SourceDatabaseName:"MyDatabase" /SourceServerName:localhost /TargetFile:"C:\SomeDirectory\MyDatabase.dacpac"