![在硬件节点之间迁移 SQL Server 2005](https://linux22.com/image/528438/%E5%9C%A8%E7%A1%AC%E4%BB%B6%E8%8A%82%E7%82%B9%E4%B9%8B%E9%97%B4%E8%BF%81%E7%A7%BB%20SQL%20Server%202005.png)
我目前正在整合一台运行 MS SQL Server 2005 的专用服务器和一台托管约 700 个流量极低的网站的专用 Web/应用程序服务器。目标系统装有四核 5148 Xeon CPU 和 12 GB RAM。两台服务器上的内存和 CPU 负载都相对较低(因此进行了整合)。
然而,经过几个小时的谷歌搜索,我还是想不出如何将 SQL Server 数据和设置逐字逐句地迁移到新服务器,同时尽量减少停机时间。关闭两台服务器上的服务并将整个 MSSQL.1 目录实际复制到新服务器是否可行,或者这是反人类罪(考虑到我将安装完全相同的 MSSQL 版本和 SP 级别)?请记住,在迁移数据后,我会将旧服务器的 IP 添加到新服务器(以免客户麻烦将其 web.config 文件更新为 127.0.0.1)。
任何帮助,将不胜感激!
答案1
答案2
- 设置新的 SQL Server 并使其运行。
- 使用以下知识库文章将登录信息从旧的转移到新的。
- 从旧数据库服务器,使用新 SQL Server 的路径编写 CREATE DATABASE ... FOR ATTACH 脚本。保存脚本并将其放在可以从新服务器访问的位置。
- 关闭旧的 SQL Server。将数据和日志文件复制到新服务器上的适当位置。
- 运行 CREATE DATABASE ... FOR ATTACH 脚本以使所有数据库联机。
由于我做了一些假设,因此遗漏了一些事项:
- 您无需处理域成员身份。如果要处理,您需要确保您拥有旧服务器上的本地管理员密码(并且该帐户已启用,您可以使用它登录 - 测试一下!)。将旧服务器从域中删除并重命名。将新服务器从域中删除。将其重命名为与旧服务器相同的名称。将其重新添加到域中。然后按照将 @@SERVERNAME(如 gbn 链接的)更改为正确名称的步骤进行操作。
- 所有数据库都没有任何特殊配置选项,如 FILESTREAM、跨数据库所有权链接等。如果有,您需要在将旧服务器脱机之前编写这些选项的脚本。将数据库联机后,您需要在新服务器上运行该脚本。