将数据库从 SQL Server 2019 克隆到 2017

ser*_*rge 14 sql-server backup restore sql-server-2017 sql-server-2019

我尝试将数据库从本地计算机 v15 (2019) 上的 Sql Server 克隆到服务器计算机 v14(2017)。我做了一个 .bak 文件,当我尝试在服务器端导入时,它显示:

System.Data.SqlClient.SqlError:数据库已在运行版本 15.00.4083 的服务器上备份。该版本与运行版本 14.00.2037 的服务器不兼容。在支持备份的服务器上还原数据库,或使用与该服务器兼容的备份。(Microsoft.SqlServer.SmoExtended)

14-15 Sql Server 版本是否有“兼容”备份模式?

本地(在 docker、Linux 上):

Microsoft SQL Server 2019 (RTM-CU8-GDR) (KB4583459) - 15.0.4083.2 (X64) 2020 年 11 月 2 日 18:35:09 版权所有 (C) 2019 Microsoft Corporation Developer Edition(64 位)Linux (Ubuntu 18.04.5)长期支持)

远程(在 Windows Server 上)

Microsoft SQL Server 2017 (RTM-GDR) (KB4583456) - 14.0.2037.2 (X64)
2020 年 11 月 2 日 19:19:59 版权所有 (C) 2017 Microsoft Corporation 标准版(64 位),位于 Windows Server 2019 Standard 10.0(内部版本 17763)上:)(管理程序)

ser*_*rge 18

刚刚成功克隆数据库,在本地使用:在 SSMS 中,右键单击要导出的数据库,然后Tasks=>Export Data-tier Application它会创建一个 bacpac 文件。 在此输入图像描述

将 backpac 复制到远程服务器,然后在 SSMS 中右键单击“Databases”文件夹,然后Import Data-tier Application使用复制的 backpac 文件。

它还复制架构和数据......

  • 是的,当您需要从新版本迁移到旧版本时,**BACPAC**(架构和数据)或 **DACPAC**(如果您只需要架构,不需要数据)是可行的方法。很高兴你能弄清楚! (2认同)