错误:无法解析来自名为“ master.dacpac”的源中的外部元素

Eam*_*voy 8 sql-server dacpac docker sqlpackage

我正在Windows机器上使用sqlpackage构建数据库dacpac。该项目包含对master.dacpac

我将dacpac移至Linux计算机(docker mssql-server-linux映像)并还原数据库。

deploy-database.sh

# publish dacpac using sqlpackage
./sqlpackage/sqlpackage /Action:Publish /sf:"/MyDb.dacpac" /tu:sa /tp:Password1 /tdn:MyDb /tsn:localhost
Run Code Online (Sandbox Code Playgroud)

错误:

没有提供文件供参考master.dacpac; 部署可能会失败。创建包时,原始引用文件位于C:$(Windows机器路径)\ MASTER.DACPAC。初始化部署(失败)在部署计划生成期间发生错误。部署无法继续。错误SQL0:无法解析对名为“ master.dacpac”的源中的外部元素的引用,因为未加载此类源。警告SQL72025:没有文件提供给参考master.dacpac。部署可能会失败。创建包时,原始引用文件位于C:$(Windows机器路径)\ MASTER.DACPAC。

添加引用时发生错误。部署无法继续。命令'/ bin / sh -c sh /deploy-database.sh'返回了非零代码:1

我尝试master.dacpac直接添加到项目中,也将其复制到docker映像,但是发生相同的错误。

如何在引用了master.dacpac的Linux环境中还原dapac?

Tra*_*er1 2

我遇到了类似的问题,我的解决方案是将 dacpac 文件重命名为大写(例如:),MASTER.DACPAC这对我有用,并将包含 dacpac 文件的目录设置为工作目录。