以下是我的情况。$WORK 有三台集群数据库服务器(64 位 Server 2003),目前运行着两个 SQL Server 实例。不幸的是,几年前建立集群时,我的组织没有 64 位 SQL Server 许可证,因此我们为两个实例安装了 32 位版本的 SQL Server 2005 Enterprise。它们运行良好,我们没有遇到 32 位 SQL Server 的任何限制,因此我原本不打算迁移到 64 位 SQL Server,直到大约一年后更换硬件(服务器和 SAN)。直到我被告知我们的 CMS 经理想要迁移到 SharePoint 2010,而这需要 64 位 SQL Server 2008;现在我需要尽快升级。
我有个计划:
第一个实例是默认实例,托管了大约十几个其他应用程序数据库。我根本不打算修改这个实例。换句话说,默认实例将在整个升级过程中保持在线,并将保留在 32 位 SQL Server 2005 上,只有几次由于另一个实例上的工作导致故障转移而导致的短暂中断。
第二个实例是专门用于我们的 SharePoint 安装的命名实例。我打算将其移动到 64 位 SQL Server 2008 R2 Enterprise。由于从 32 位移动到 64 位 SQL Server 时无法进行就地升级,因此我认为我需要从群集中完全卸载当前命名实例(当然,首先进行完整备份),然后重新安装一个与上一个实例同名的新 64 位 SQL Server 2008 实例。然后,我将从备份中恢复旧数据库。
我还有一些问题:
上述计划合理吗?我有什么明显的误解吗?有没有更简单的方法可以做到这一点?
SAN 上没有可用空间,因此我无法设置第三个实例并将数据库迁移到该实例(我首选的方法)。据我所知,在这种情况下需要完全重新安装。对吗?
在同一集群上同时运行一个 32 位 SQL Server 2005 实例和 64 位 SQL Server 2008 实例会出现什么问题吗?
安装一个与之前的命名实例同名的新命名实例会造成什么麻烦吗?
答案1
是的。不要忘记使用 sp_help_revlogin 编写登录脚本(您需要在 Google 上搜索并将存储过程放在您的系统上),这样您就可以恢复数据库而不必重新创建登录。您还需要作业等。如果您正在安装 64 位版本并且正在安装完全相同的版本,那么您只需恢复系统数据库即可。
是的,需要完全重新安装。
不。
不。