我们的软件已有20多年的历史,可以追溯到诸如Sybase和SQL 7这样的数据库。现在,让我们忽略Sybase部分。我们有许多老客户使用我们软件的非常老版本,从SQL 7(2001-2002年)到SQL 2014 (我们今天支持)不等。从技术上讲,我们的软件仍然可以在MSDE 2000上运行。但这不是重点。我们强制所有更新的客户端至少使用Server 2008 R2,但正式支持到2014年。是的,我们确实有很多老客户仍然在Windows '95上使用我们的软件的古老版本。
不管怎么说,说到问题上。目前,当我们有一个老客户回来,希望升级,我们必须经过一个大的精心升级过程。现在,脚本是最简单的部分。实际上,我刚刚完成了最新的主要升级脚本,它支持将数据库从2001年(SQL 7)版本升级到我们的最新版本。同样的脚本适用于任何中间版本.
然而,在运行这些脚本之前,我首先必须通过一系列手动和繁琐的步骤来实现数据库。我已经加快了这一进程:
所以,正如你所能想象的,很多回头客都是全职工作。我想我可以在这台XP机器上构建某种程度的自动化,但这仍然是我想要消除的手动过程。我们甚至不想获取他们的数据库,而且他们中的许多人不想让我们看到他们的数据。
是否有一种方法可以轻松地分发到客户端的计算机上,作为安装程序的一部分,它可以自动执行从SQL 7到SQL Server 2014的任何给定数据库版本的升级?
为了更清楚地了解安装过程,这是一个安装程序,我们已经有能力从2000年到2008年直接恢复数据库R2。但是我们需要扩展这个安装程序,以适应从MSSQL 7到2014年不等的数据库升级。正如我现在所理解的,我可以从7> 2005 > 2014直接跳下去。但如果可能的话,我还是想消除这个问题。我不想让我们的安装程序同时在客户的机器上加载2005和2014。
发布于 2016-11-02 15:28:09
如果我在你的位置,我会走下面的路线,这并不像你想象的那么乏味。
这是一个您不能将数据库升级到更多的版本--比两个版本更新。。
我有编写关于迁移前后步骤的详细答复,这将是您的一个方便的参考。
对于自动化,您可以使用dbatools (基于powershell)-支持从sql server 2000到2016 (最新版本out)迁移的启动-启动迁移。
注意:您必须测试大量的东西,因为这是您的应用程序的一个重大飞跃!
发布于 2016-11-02 15:01:51
这让你的生活更轻松,否定了7-2000-2008-2014年的三重奏。
然而,仍然不是一个很好的解决办法。我会花时间编写一个PowerShell脚本来实现这个过程的自动化。
https://dba.stackexchange.com/questions/153956
复制相似问题