3

有没有办法将 BACPAC 文件导入现有(空)数据库?看起来 PowerShell 命令只允许我创建新的目标数据库......

有诀窍吗?

4

2 回答 2

3

无法将 bacpac 导入或还原到现有 Azure SQL 数据库。它总是会创建一个新的数据库。

删除现有数据库并重命名由导入的 bacpac 生成的数据库,或删除数据库并使用已删除数据库的名称作为数据库名称导入 bacpac。

于 2019-02-18T15:43:54.327 回答
2

是的,您可以将 BACPAC 文件导入现有数据库,但它应该是绝对空的。

使用以下命令,从 cmd 或 powershell 运行它。注意:sqlpackage.exe 的位置在您的机器上可能不同。

/tdn:这里是目标数据库名称,可以是预先存在的数据库,但完全为空。对于较大的数据库导入,事先创建数据库是一个好习惯。如果您的数据库不存在,SQL package.exe 会为您创建一个新数据库,但除非另有说明,否则它将其最大大小限制为 32gb。

c:\"Program Files"\"Microsoft SQL Server"\150\DAC\bin\sqlpackage.exe 
    /a:Import 
    /sf:"bacpac file path" 
    /tsn:"targetsqlserver.database.windows.net" 
    /tdn:target_database_name
    /tu:username
/tp:password
于 2021-06-07T19:45:49.620 回答