同一台开发机器上的多个版本的 SQL Server

Som*_*Guy 2 sql-server backup restore

我正在整合一些 SQL Server 以简化管理。我正在考虑使用 SQL Server 2005/2008R2/2012 的新 VM,每个 VM 作为同一台机器上的单独命名实例。这台机器将仅用于“沙盒”环境,主要用于测试我们备份的恢复。没有应用程序会遇到这个问题。

我可能会遇到多个版本的问题吗?我记得几年前在同一台机器上使用 SQL 2000/2005 时遇到过问题。你们是否使用单独的机器进行恢复测试?

Aar*_*and 8

不,应该没有任何问题;我现在有一个 2000、2005、2008、2008 R2、2012 和 2014 的虚拟机,它运行良好。

我建议遵守以下几点:

  • 首先安装最旧的版本,并在继续下一个之前完全修补它。
  • 使用一个非常一致的,直观的命名方案,为每个实例(例如.\SQL2000.\SQL2005等)。也不要安装默认实例(因为它无法自行记录它的版本、用途等)。
  • 不要安装多个版本的客户端工具,除非您需要在多个版本中管理 SSIS 包。对于几乎所有其他内容,您可以使用 2012 客户端工具管理所有下级版本。如果您打算使用 Visual Studio(任何版本),请不要在 VM 中安装它,在主机中使用它。不同版本的 Visual Studio 并不总是与不同版本的 SQL Server(尤其是客户端工具)配合得很好。
  • 确保不允许默认启动行为,所有实例将自动启动(您可能只希望在任何给定时间运行特定版本并使用资源)。
  • 在所有实例上使用相同的 sa 密码、SQL Server 服务帐户、SQL 代理帐户等,并确保在所有实例上添加您自己的帐户作为管理员。您想要做的最后一件事是被锁定在一个实例之外,因为它具有不同的密码,或者遇到一些您无法分辨是与帐户相关还是与版本相关的问题。
  • 不要在版本 x 上创建数据库并期望在 xn 上备份/恢复它们。备份不向后兼容(无论兼容级别如何),只能向前兼容。
  • 请注意恢复模型、日志自动增长设置和大型数据库。例如,您不想在每个实例上都安装 AdventureWorks DW 数据库 - 这会占用宝贵的空间,而且您很快就会耗尽整个驱动器。将这些数据库放在手边(例如在外部驱动器上),但仅在特定版本上需要它们时才附加/恢复它们。