Configuração de replicação não for bem sucedida do SQL Server é implementado através de uma imagem de disco


Sintomas


Implementar o SQL Server 2000 utilizando a imagem de disco rígido de outro computador onde o SQL Server 2000 está instalado. Se utilizar o SQL Server Enterprise Manager para configurar um distribuidor de replicação, a configuração do distribuidor pode não ter êxito e receberá a seguinte mensagem de erro:
Não conseguiu configurar o SQL Server Enterprise Manager ' <servidor> \ <instância>' que o distribuidor para ' <servidor> \ <instância>'.
Erro 18483: Não foi possível ligar ao servidor de ' <servidor> \ <instância>' porque 'distributor_admin' não está definido como um início de sessão remoto no servidor.

Nota Se efectuar estes passos na instância predefinida do SQL Server 2000, o nome da instância não aparece na mensagem de erro.

Também poderá ver que o valor da variável global do SQL Server 2000 sistema de @@SERVERNAME é diferente do nome de rede do computador com o SQL Server 2000.

Nota Se detectar este problema no SQL Server 2005, a mensagem de erro é ligeiramente diferente. Também pode utilizar a solução mencionada neste artigo para contornar o problema.

Causa


Quando implementar o SQL Server 2000 a partir de uma imagem de disco rígido de outro computador onde o SQL Server 2000 está instalado, o nome de rede do computador replicado é mantido na nova instalação. O nome de rede incorrecta faz com que a configuração do distribuidor de replicação falham. O mesmo problema ocorre se o nome do computador após a instalação do SQL Server.

Solução alternativa


Para contornar este problema, substitua o nome do servidor de SQL Server 2000 com o nome de rede correcta do computador. Para tal, siga estes passos:
  1. Inicie sessão no computador onde implementado o SQL Server 2000 da imagem do disco e, em seguida, execute a seguinte instrução Transact-SQL no SQL Query Analyzer:
    -- Use the Master databaseUSE master
    GO

    -- Declare local variables
    DECLARE @serverproperty_servername varchar(100),
    @servername varchar(100)

    -- Get the value returned by the SERVERPROPERTY system function
    SELECT @serverproperty_servername = CONVERT(varchar(100), SERVERPROPERTY('ServerName'))

    -- Get the value returned by @@SERVERNAME global variable
    SELECT @servername = CONVERT(varchar(100), @@SERVERNAME)

    -- Drop the server with incorrect name
    EXEC sp_dropserver @server=@servername

    -- Add the correct server as a local server
    EXEC sp_addserver @server=@serverproperty_servername, @local='local'
  2. Reinicie o computador com o SQL Server.
  3. Para verificar que o nome do SQL Server e o nome de rede do computador são os mesmos, execute a seguinte instrução Transact-SQL no SQL Query Analyzer:
    SELECT @@SERVERNAME, SERVERPROPERTY('ServerName')

Mais informações


Pode utilizar a variável global de @@SERVERNAME ou a função SERVERPROPERTY('ServerName') no SQL Server para localizar o nome de rede do computador com o SQL Server. A propriedade ServerName da função SERVERPROPERTY relatórios automaticamente a alteração no nome da rede do computador quando reiniciar o computador e o serviço SQL Server. A variável global @@SERVERNAME retém o nome de computador do SQL Server original até que o nome do servidor de SQL é reposto manualmente.

Passos para reproduzir o problema

No computador onde implementada do SQL Server a partir de uma imagem de disco, siga estes passos:
  1. Inicie o SQL Server Enterprise Manager.
  2. Expanda O grupo de servidores SQLe, em seguida, clique no nome de instância do SQL Server.
  3. No menu Ferramentas , aponte para
    Replicação e, em seguida, clique em Configure Publishing, Subscribers and Distribution.
  4. No Configure Publishing and Distribution Wizard para ' <servidor> \ <instância>'diálogo caixa, clique em seguinte.
  5. Na caixa de diálogo Seleccionar distribuidor , clique para seleccionar a marca de ' <servidor> \ <instância>' próprio distribuidor; SQL Server irá criar uma base de dados de distribuição e de registo a caixa de verificação e, em seguida, clique em seguinte.
  6. Na caixa de diálogo Configurar o SQL Server Agent , clique em seguinte.
  7. Na caixa de diálogo Especificar pasta Snapshot , clique em seguinte.

    Nota Se receber uma mensagem para confirmar o caminho da pasta snapshot, clique em Sim.
  8. Na caixa de diálogo Personalizar a configuração , clique para seleccionar a caixa de verificação não, utilizar as seguintes predefinições e, em seguida, clique em seguinte.
  9. Na caixa de diálogo a concluir o Assistente de distribuição e Configure Publishing , clique em
    A Concluir.

Referências


Para mais informações sobre replicação de disco e as instalações do SQL Server, visite os seguintes Web sites da Microsoft: