gpt4 book ai didi

sql - 我如何知道我的 bacpac 适用于哪个版本的 SQL Server? (我在 Ubuntu 上使用 SQL Server 2019 express)

转载 作者:行者123 更新时间:2023-12-04 18:55:47 24 4
gpt4 key购买 nike

我获得了一个 SQL Server bacpac 文件来恢复 Ubuntu 20.x 实例上的数据库。
我想我会使用这个命令来恢复文件:

/opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "Password123!" -Q "RESTORE DATABASE [demodb] FROM DISK = N'/var/opt/mssql/backup/mssql-latest.bacpac' WITH FILE = 1, NOUNLOAD, REPLACE, NORECOVERY, STATS = 5"
虽然它给我的错误是:

Msg 3241, Level 16, State 1, Server 6f604ce9f741, Line 1The media family on device '/var/opt/mssql/backup/mssql-latest.bacpac' is incorrectly formed. SQL Server cannot process this media family.Msg 3013, Level 16, State 1, Server 6f604ce9f741, Line 1RESTORE DATABASE is terminating abnormally.


当通过谷歌搜索更多地研究这个时,它似乎与旧版本的 SQL Server bacpac 与新版本的 SQL Server 一起使用有关。
我目前正在运行 SQL Server 2019 Express,认为这可行。
如何在不下载每个版本的 SQL Server 的情况下找出我需要使用的版本?同样,我如何知道我是否需要使用 Express 或 Developer,或任何其他版本的 SQL Server。我认为 Express 是理想的,因为我认为它是轻量级的。

最佳答案

这里真正的问题是,您正在尝试使用“RESTORE DATABASE”命令恢复 .BACPAC 文件,这显然会失败,因为“RESTORE DATABASE”命令用于恢复 .BAK 文件而不是 .BACPAC 文件。
您必须使用 SQLPackage 实用程序来恢复 BACPAC 文件。提供详细信息here .

关于sql - 我如何知道我的 bacpac 适用于哪个版本的 SQL Server? (我在 Ubuntu 上使用 SQL Server 2019 express),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67830780/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com