我正在使用SQL Server Express 2008 R2,我想将实例名称从“机器名称”\ SQLEXPRESS2008R2更改为“机器名称”。我跑了:
sp_dropserver 'old_name'
go
sp_addserver 'new_name', 'local'
go
然后重新启动SQL服务。现在,当我看到
Select @@SERVERNAME --this is correct
但这不正确?
Select serverproperty('ServerName') --This still shows old name
所以,当我尝试通过SSMS连接到我的实例时,仍然需要使用旧的实例名称进行连接,而不是我刚应用的新实例?我究竟做错了什么?为什么新名称没有?
谢谢,
取值
答案 0 :(得分:7)
这是来自网上书籍:
虽然@@ SERVERNAME函数和SERVERPROPERTY函数的SERVERNAME属性可能返回格式相似的字符串,但信息可能不同。 SERVERNAME属性会自动报告计算机网络名称中的更改。
相反,@@ SERVERNAME不会报告此类更改。 @@ SERVERNAME报告使用sp_addserver或sp_dropserver存储过程对本地服务器名称所做的更改。
第一条评论是正确的。您必须重新安装SQL才能将其更改为默认实例。
每个BOL如果您使用命名实例更改计算机名称,则必须按如下方式使用:
sp_dropserver <'old_name\instancename'>
GO
sp_addserver <'new_name\instancename'>, local
GO
答案 1 :(得分:3)
是的,重新启动SQL服务器。现在两个名字都显示正确。
SELECT @@SERVERNAME
SELECT serverproperty('ServerName')