我们需要从运行 SQL 2005 的现有硬件迁移到运行 SQL 2008 R2 的新硬件。
当一切都完成后,我们希望“旧 sql 2005”服务器上的相同 IP 和主机名位于新的 SQL 2008 R2 服务器硬件上。
这是因为我们不想弄乱客户端连接设置或编程中硬编码的内容等。
我们目前拥有采用不同名称制造的新型 2008 R2 盒子。
有没有办法将现有的 2005 数据库、SSIS 作业、SSAS 多维数据集、SSRS 报告等(所有内容、安全性等)移至新硬件,然后将新硬件重命名为与旧硬件相同的 IP 和主机名。
底线:我们希望将 SQL 2005 从旧硬件移动到运行 SQL 2008 R2 的新硬件,而不会干扰客户端。
答案1
如果(正如 uSlackr 指出的那样)您愿意移动内容,那么请执行以下操作:
- 启动新服务器,将其命名为 MyNewServer(或其他名称),并使用新 IP。在其上安装 SQL 2008 R2。
- 迁移所有内容(数据库、作业、登录、SSIS、SSRS、多维数据集等)
- 当你对它很好感到满意时,关闭 2005 盒子
- 将新服务器重命名为旧服务器,并重新寻址到旧 IP
在 SQL Server 中执行以下语句:
sp_dropserver MyNewServer
GO
sp_addserver MyOldServer,本地
GO
(看这个MSDN有关重命名运行 SQL Server 的主机的详细信息,请参阅文章)
请注意,在 SQL Server 安装创建的本地组中会残留一些反强迫症残余。有些组在创建时会将服务器的名称作为组名的一部分,因此您将拥有一些名称中包含 MyNewServer 的本地组。从技术角度来看,这无关紧要。
如果您需要一些有关如何进行内容迁移的步骤,请给我留言,我会添加一些您可以做的事情。
答案2
我不能谈论移动内容,但听起来你知道怎么做。至于不弄乱名称,请随意命名新服务器并为其指定一个新 IP。当需要切换时,请执行以下操作:
- 更新旧服务器名称的 DNS 记录以指向新服务器的地址
- 将旧服务器的 IP 地址添加到新服务器的 NIC,以便它可以为两个地址提供服务。
无论客户端使用服务器名称还是 IP 地址,这都将确保能够访问新的盒子。