機器名與實例名不同,解決辦法
在執(zhí)行 exec sp_addlinkedserver 'DMGZSRV10' 的時候一直提示
消息 15190,級別 16,狀態(tài) 1,過程 sp_dropserver,第 56 行
仍有對服務(wù)器 'DMGZSRV10' 的遠(yuǎn)程登錄或鏈接登錄。
又執(zhí)行
exec sp_dropserver 'DMGZSRV10', 'droplogins'
這時提示
下面是解決的方案
原始狀態(tài)
1、服務(wù)器名LC04 MSSQL實例名MSSQLSERVER
2、在LC04上建立了發(fā)布,在另一臺服務(wù)器上訂閱或者用SQLServer管理器遠(yuǎn)程訪問LC04上的SQLServer,出現(xiàn)錯誤:
無法連接到 LC04。
-----------------------------
其他信息:
在建立與服務(wù)器的連接時出錯。在連接到 SQL Server 2005 時,在默認(rèn)的設(shè)置下 SQL Server 不允許進(jìn)行遠(yuǎn)程連接可能會導(dǎo)致此失敗。 (provider: 命名管道提供程序, error: 40 - 無法打開到 SQL Server 的連接) (Microsoft SQL Server,錯誤: 53)
解決處理
將LC04的計算機名稱改為MSSQLSERVER與MSSQL實例名相同
此時狀態(tài)
SQLServer管理器遠(yuǎn)程可以訪問LC04的數(shù)據(jù)庫,但不能訂閱,出現(xiàn)錯誤:
SQL Server 復(fù)制需要有實際的服務(wù)器名稱才能連接到服務(wù)器。不支持通過服務(wù)器別名、IP 地址或任何其他備用名稱進(jìn)行連接。請指定實際的服務(wù)器名稱“LC04”。 (Replication.Utilities)
解決處理
在LC04(現(xiàn)在應(yīng)當(dāng)名為MSSQLSERVER)的服務(wù)器上,執(zhí)行如下代碼
SELECT @@SERVERNAME ,serverproperty('servername')
發(fā)現(xiàn)兩個不同,分別為LC04和MSSQLSERVER
執(zhí)行如下代碼
exec sp_droplinkedsrvlogin 'LC04',null
exec sp_dropserver 'LC04','droplogins'
exec sp_addserver 'MSSQLSERVER' , 'LOCAL'
出現(xiàn)錯誤
無法刪除服務(wù)器 'LC04',因為該服務(wù)器用作復(fù)制過程中的發(fā)布服務(wù)器。 (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服務(wù)
設(shè)置發(fā)布服務(wù)器屬性,發(fā)現(xiàn)發(fā)布服務(wù)器的服務(wù)器名還是為LC04,造成發(fā)布執(zhí)行錯誤:
在建立與服務(wù)器的連接時出錯。在連接到 SQL Server 2005 時,在默認(rèn)的設(shè)置下 SQL Server 不允許進(jìn)行遠(yuǎn)程連接可能會導(dǎo)致此失敗。 (provider: 命名管道提供程序, error: 40 - 無法打開到 SQL Server 的連接) (Microsoft SQL Server,錯誤: 53)
使用 exec sp_helpserver
發(fā)現(xiàn)name為repl_distributor的服務(wù)器的network_name還是LC04
解決處理
執(zhí)行exec sp_setnetname 'repl_distributor','MSSQLSERVER'
再次設(shè)置發(fā)布服務(wù)器,并發(fā)布,完成
實際上在SQLServer和其他應(yīng)用中還有可能用到原有的數(shù)據(jù)庫名LC04
可以建立SQLServer的新別名為LC04,這樣基本上都可以解決了