裝完sql後修改電腦名稱後不能進行發布的訂閱的解決辦法

來源:互聯網
上載者:User

方法一:

在配置資料同步的時候,要求相互同步的兩台機器的資料庫必須通過預設執行個體名稱進行串連。如果你的預設執行個體已經刪掉了,在當前執行個體上進行建立發佈動作時候,會提示你:
  “由於未在SqlServer的此執行個體上安裝複製組件,Microsoft SQL server 無法訪問這些組件,請參閱SQL Server……”

注意下面還有一個附加的提示,它的意思就是說預設執行個體名和當前的執行個體名稱不一致。其實這個才是導致不能複製的主要原因。把它解決了,你就可以進行複製了。
   
  產生的原因是因為安裝完SqlServer之後,又修改了電腦的名稱。

  解決“SqlServer複製需要有實際的伺服器名稱才能串連到伺服器。不支援通過伺服器別名、Ip地址或任何其他備用名稱進行串連。”
 
  一:首先看一下,你的預設執行個體名稱和當前的執行個體名稱是否一致,我們在SqlServer2005 Management Studio中建立查詢

    SELECT @@SERVERNAME,SERVERPROPERTY('SERVERNAME')

可以看到查詢出來兩個不同的結果,說明當先啟動並執行執行個體不是預設執行個體。可以通過以下方法將當前啟動並執行執行個體改為預設執行個體。

 

 1 USE master 
2 GO
3 -- 設定兩個變數
4 DECLARE @serverproperty_servername varchar(100),
5 @servername varchar(100)
6 -- 取得Windows NT 伺服器和與指定的 SQL Server 執行個體關聯的執行個體資訊
7 SELECT @serverproperty_servername = CONVERT(varchar(100), SERVERPROPERTY('ServerName'))
8 -- 返回運行 Microsoft SQL Server 的本機伺服器名稱
9 SELECT @servername = CONVERT(varchar(100), @@SERVERNAME)
10 -- 顯示擷取的這兩個參數
11 select @serverproperty_servername,@servername
12 --如果@serverproperty_servername和@servername不同(因為你改過電腦名稱字),再運行下面的
13 --刪除錯誤的伺服器名
14 EXEC sp_dropserver @server=@servername
15 --添加正確的伺服器名
16 EXEC sp_addserver @server=@serverproperty_servername, @local='local'

 

然後重啟sql,運行 SELECT @@SERVERNAME,SERVERPROPERTY('SERVERNAME')

 

 

方法二:

由於需要需要配置一個發布訂閱,可是一直報告:" sql server 複製需要有實際的伺服器名稱才能串連到伺服器,不支援通過別名、ip地址或其他任何備用名稱進行串連。請指定實際的伺服器名稱“xxxx”(Replication Utlities)。"

       經過一番分析發現是在安裝完sql server 後修改過機器名稱,運行下面兩條語句既可以看出來:

1 use master 
2
3 go
4
5 select @@servername;
6 select serverproperty('servername')

如果這兩個結果不一致,說明機器改過名字,在配置複製的時候就會報上面的錯誤。

 1 --要修複此問題  
2 --執行下面的語句,完成後重新啟動SQL服務
3
4 if serverproperty('servername') <> @@servername
5 begin
6 declare @server sysname
7 set @server = @@servername
8 exec sp_dropserver @server = @server
9 set @server = cast(serverproperty('servername') as sysname)
10 exec sp_addserver @server = @server , @local = 'LOCAL'
11 end

     

最後別忘了重新啟動服務哦,啟動完後,在運行:

1 use master 
2
3 go
4
5 select @@servername;
6 select serverproperty('servername')

一切正常,複製也能用了

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.