【问题标题】:How do I migrate the SQL server data to an older engine?如何将 SQL Server 数据迁移到旧引擎?
【发布时间】:2016-12-15 22:56:45
【问题描述】:

这是我目前的困境:我需要将数据库(包括数据)从 SQL Server 版本 13 迁移到版本 12。源在 Azure 机器上,目标在我的本地机器上。我无法在本地机器上安装 SQL Server 2016;这不是一个选择。我该怎么做?

【问题讨论】:

    标签: sql sql-server azure migration


    【解决方案1】:

    我建议你使用SQL Database Migration Wizard

    【讨论】:

    • 谢谢,但上面写着“SQL 数据库迁移向导 (SQLAzureMW) 旨在帮助您将 SQL Server 2005/2008/2012/2014 数据库迁移到 Azure SQL 数据库”——我需要迁移其他方式!
    • 研究了一下 - “出于安全原因”,我不允许从我的 Azure 盒子连接。看起来这个工具需要直接连接。
    【解决方案2】:

    您可以尝试使用SqlPackage 导出 Azure 数据库吗?

    我最近做了与你相反的操作,将 SQL Server 2012 数据库导出到 Azure SQL V12。我将 SqlPackage 和 Visual Studio 与 SQL Server Data Tools 结合使用。

    基本上,我基于源数据库(托管 SQL Server 2012)创建了一个 SQL 项目,将目标平台设置为 Microsoft Azure SQL V12,并修复了 Azure SQL V12 不支持的所有错误和警告。

    然后我在源数据库和 SQL 项目之间进行了架构比较。有了这个,我生成了一个针对源数据库副本运行的脚本。

    最后,我使用 SqlPackage 从运行脚本的数据库中创建了一个 .bacpac,然后我可以将其部署到 Azure。

    如果你反其道而行之,也许它会奏效。在使用 Azure SQL 时,务必更新软件。

    【讨论】:

      【解决方案3】:

      似乎答案在插入脚本中,我没有意识到这是一件事。 How to generate an INSERT script for an existing SQL Server table that includes all stored rows?有很好的信息

      编辑:另一个答案说不要生成插入脚本来复制数据库中的所有数据。我试过了,它似乎失败了,因为脚本本身有一些截断(它最终超过 11 GB)。与我合作的一位开发人员建议使用 bcp 实用程序(this link 上的文档),我还没有尝试过。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-02-08
        • 2021-08-21
        • 2018-11-12
        • 2010-12-28
        • 2011-07-02
        • 1970-01-01
        • 2013-09-25
        • 2012-05-14
        相关资源
        最近更新 更多