it-swarm.cn

如何重命名SQL Server 2008实例?

如何在不重新安装的情况下重命名SQL Server 2008实例?

例如,如果数据库引用为“ MySQLServer\MSSQL2008”,如何重命名为“ MySQLServer\SQL2008”?

28
Scott Marlowe

我认为没有安装就无法重命名。

在一些内部数据库(例如复制)中,名称中还剩下一些痕迹,以后您可能会发现错误。

如果可以,除非您有多个实例,否则最好重新安装,然后再次导入所有数据库。

31
William Hilsum

我知道该脚本在整个“网络”上无处不在,但是每当我用它搜索时,我都会想到精心制作的存储过程,这些存储过程对于我的需求来说是多余的。因此,以下是重命名SQL Server实例所必需的命令:

  • 获取SQL Server实例的当前名称以供以后比较。
    SELECT @@servername
  • 从SQL Server本地实例上的已知远程服务器和链接服务器的列表中删除服务器。
    EXEC master.dbo.sp_dropserver ‘[SERVER NAME]‘
  • 定义SQL Server本地实例的名称。
    EXEC master.dbo.sp_addserver ‘[NEW SERVER NAME]‘, ‘local’
  • 获取SQL Server实例的新名称以进行比较。 SELECT @@servername

以及有关其用法的一些注意事项:
sp_dropserver

  1. 此存储过程可以同时删除远程服务器和链接服务器。
  2. 使用droplogins参数指示还必须删除[SERVER NAME]的相关远程和链接服务器登录名。

sp_addserver

  1. 若要定义链接服务器,请使用sp_addlinkedserver(因为此功能在SQL Server 2005之上的版本中将不再使用);
  2. sp_addserver不能在用户定义的事务中使用。

重命名SQL Server时,我还会建议以下内容:
如果要在计算机重命名中执行此任务,请先重命名计算机,然后重命名SQL Server。重命名SQL Server后,请完全重新启动SQLServer,包括所有依赖服务。

我从下面的链接中获得了此信息:

https://web.archive.org/web/20141116031942/http://modhul.com/2008/01/15/renaming-a-sql-server-instance/

9
arunmanikumar

请注意,您可以添加“别名”并在两个名称下使用它:

enter image description here

1
jitbit

select @@servername将显示新名称,但是ERRORLOG中的服务器名称将显示旧名称,并且您无法使用新名称进行连接。

唯一的解决方案是重新安装。

0
Ben