SQL Server 2005/2008 配置 Transactional Replication 過程中,出現如下異常信息。
異常信息: Replication.Utilities
——————————
SQL Server 復制需要有實際的服務器名稱才能連接到服務器。不支持通過服務器別名、IP
地址或任何其他備用名稱進行連接。請指定實際的服務器名稱“xxxxxxx”。
SQL Server replication requires the actual server name to make a connection
to the server. Connections through a server alias, IP address, or any other
alternate name are not supported.
異常截圖:

解決辦法:
1. 檢查SQL Server 的服務器名稱:
SELECT @@SERVERNAME
2.如果發現上述 SQL 查詢得到的服務器名稱和實際的計算機名稱不符合,則需要進一步執行下面的腳步:
sp_dropserver
‘old_server_name’
GO
sp_addserver ‘current_computer_name’, ‘local’
此時,再次運行 SELECT @@SERVERNAME,可能獲得 NULL值。重啟SQLSERVER
服務,再次運行查詢語句,將獲得SERVER的真實名稱。
===============================================
出現錯誤
無法刪除服務器 'LC04',因為該服務器用作復制過程中的發布服務器。 (Microsoft SQL Server,錯誤:
20582)
解決處理
select * from
msdb.dbo.MSdistpublishers
DELETE FROM msdb.dbo.MSdistpublishers
select *
from msdb.dbo.MSdistpublishers
exec sp_droplinkedsrvlogin 'LC04',null
exec
sp_dropserver 'LC04','droplogins'
exec sp_addserver 'MSSQLSERVER' , 'LOCAL'
重啟SQLServer服務
