凌峰创科服务平台

SQL 2008服务器名怎么改?

⚠️ 重要:操作前必读

在开始任何修改之前,请务必备份数据库!这是防止操作失败导致数据丢失的最重要一步。

SQL 2008服务器名怎么改?-图1
(图片来源网络,侵删)
-- 示例:备份所有用户数据库
BACKUP DATABASE [YourDatabaseName] TO DISK = N'C:\Backup\YourDatabaseName.bak' WITH NOFORMAT, NOINIT, NAME = N'YourDatabaseName-Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10, CHECKSUM, NODESCRIPTION;

核心概念

在 SQL Server 中,服务器名称有两个概念:

  1. 计算机名:这是 Windows 操作系统的计算机名称,当你安装 SQL Server 时,它会默认使用这个名称作为其服务器名。
  2. SQL Server 系统别名:这是一个客户端连接时使用的逻辑名称,它通过 SQL Server 配置管理器 中的 "别名" 功能映射到实际的计算机名或 IP 地址。

我们所说的“修改服务器名称”指的是修改 计算机名,修改后,你需要确保所有连接到该服务器的客户端都使用新的名称。


使用 SQL Server Configuration Manager (推荐)

这是最安全、最官方的方法,因为它会自动更新相关的内部配置,减少出错的可能。

步骤 1:停止 SQL Server 服务

SQL 2008服务器名怎么改?-图2
(图片来源网络,侵删)
  1. 打开 SQL Server 配置管理器

    你可以在 "开始" 菜单中搜索它,或者通过 "SQL Server 2008 程序组" -> "配置工具" -> "SQL Server Configuration Manager" 打开。

  2. 在左侧窗格中,展开 SQL Server 网络配置
  3. 在右侧窗格中,找到你的 SQL Server 实例(MSSQLSERVERSQLEXPRESS)。
  4. 右键点击该实例,选择 停止

步骤 2:修改 Windows 计算机名

  1. 右键点击桌面上的 “我的电脑”,选择 “属性”
  2. 在弹出的窗口中,点击左侧的 “更改设置”
  3. 在 “系统属性” 窗口中,点击 “更改” 按钮。
  4. 输入新的计算机名,然后点击 “确定”
  5. 系统会提示你需要重启计算机才能使更改生效。此时不要重启! 先完成 SQL Server 的配置。

步骤 3:使用 SQL Server 中的存储过程更新内部名称

  1. 以管理员身份打开 SQL Server Management Studio (SSMS)

    SQL 2008服务器名怎么改?-图3
    (图片来源网络,侵删)
  2. 连接到你的 SQL Server 实例(此时可能需要使用旧的计算机名或 IP 地址)。

  3. 在查询窗口中,执行以下系统存储过程,这会更新 sys.servers 系统表中的记录,使服务器内部引用新的名称。

    -- 'OldComputerName' 是你修改前的旧计算机名
    -- 'NewComputerName' 是你修改后的新计算机名
    sp_dropserver 'OldComputerName';
    GO
    sp_addserver 'NewComputerName', 'local';
    GO

    解释:

    • sp_dropserver 'OldComputerName': 从 SQL Server 的已知服务器列表中移除旧名称。
    • sp_addserver 'NewComputerName', 'local': 将新名称添加到列表中,并标记为本地服务器。

步骤 4:重启计算机

你可以安全地重启计算机,重启后,Windows 和 SQL Server 都会使用新的计算机名。

步骤 5:验证

  1. 重启后,再次打开 SSMS。

  2. 尝试用新的计算机名连接到 SQL Server。

  3. 执行以下查询,确认服务器名称已更新:

    SELECT @@SERVERNAME AS 'Server Name';
    -- 或者
    SELECT SERVERPROPERTY('ServerName') AS 'Server Name';

直接修改 Windows 计算机名

这个方法更简单,但可能需要后续手动修复一些配置问题,方法一 更为推荐

步骤 1:停止 SQL Server 服务

与方法一相同,使用 SQL Server 配置管理器停止 SQL Server 服务。

步骤 2:修改 Windows 计算机名

与方法一相同,在 “系统属性” 中修改计算机名,系统会提示重启。

步骤 3:重启计算机

直接重启计算机。

步骤 4:验证和修复

  1. 重启后,连接到 SQL Server。

  2. 执行 SELECT @@SERVERNAME;,你会发现返回的值可能还是旧的计算机名,这就是为什么此方法不够完美。

  3. 你需要 手动 执行方法一中的存储过程来修复这个问题:

    sp_dropserver 'OldComputerName';
    GO
    sp_addserver 'NewComputerName', 'local';
    GO
  4. 执行后,再次查询 @@SERVERNAME,确认值已正确更新。


后续步骤:更新客户端连接

修改服务器名称后,所有使用旧名称连接的客户端应用程序(如你的应用程序、连接字符串等)都会失败,你需要:

  1. 更新应用程序的连接字符串:将 Server=OldName 修改为 Server=NewName
  2. 配置客户端别名:如果客户端使用别名连接,你可以在客户端的 SQL Server 配置管理器中修改或创建指向新服务器名的别名,这样可以避免修改所有应用程序的连接字符串。
  3. 检查 SQL Server Agent:确保 SQL Server Agent 作业中的任何步骤都使用了新的服务器名。
  4. 检查链接服务器:如果你的服务器上有配置了链接服务器,请检查并更新它们的定义,指向新的服务器名。
步骤 方法一 (推荐) 方法二 (简单但需手动修复)
停服务 停止 SQL Server 服务 停止 SQL Server 服务
改名 修改 Windows 计算机名 修改 Windows 计算机名
执行脚本 执行 sp_dropserversp_addserver 跳过此步
重启 重启计算机 重启计算机
验证 @@SERVERNAME 应为 newName 需要手动 执行脚本修复 @@SERVERNAME
更新客户端 更新所有客户端连接 更新所有客户端连接

对于 SQL Server 2008 这样的旧系统,强烈建议使用 方法一,因为它能确保 SQL Server 内部配置的一致性,避免潜在的连接问题。

分享:
扫描分享到社交APP
上一篇
下一篇