原文地址:http://topic.csdn.net/t/20050831/16/4242417.html
檢查相關的幾臺SQL Server服務器是否改過名稱(需要srvid=0的本地機器上srvname和datasource一樣)
在查詢分析器裏執行:
use master
select srvid,srvname,datasource from sysservers
如果沒有srvid=0或者srvid=0(也就是本機器)但srvname和datasource不一樣, 需要按如下方法修改:
USE master
GO
-- 設置兩個變量
DECLARE @serverproperty_servername varchar(100),
@servername varchar(100)
-- 取得Windows NT 服務器和與指定的 SQL Server 實例關聯的實例信息
SELECT @serverproperty_servername = CONVERT(varchar(100), SERVERPROPERTY( 'ServerName '))
-- 返回運行 Microsoft SQL Server 的本地服務器名稱
SELECT @servername = CONVERT(varchar(100), @@SERVERNAME)
-- 顯示獲取的這兩個參數
select @serverproperty_servername,@servername
--如果@serverproperty_servername和@servername不同(因爲你改過計算機名字),再運行下面的
--刪除錯誤的服務器名
EXEC sp_dropserver @server=@servername
--添加正確的服務器名
EXEC sp_addserver @server=@serverproperty_servername, @local= 'local '
修改這項參數,需要重新啓動MSSQLserver和Sqlserveragent服務才能生效。