Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server
Detalhes
| Attribute | Valor |
|---|---|
| Nome do Produto | SQL Server |
| ID do Evento | 18483 |
| Origem do evento | MSSQLSERVER |
| Componente | SQLEngine |
| Nome simbólico | REMLOGIN_INVALID_USER |
| Texto da mensagem | Não consegui ligar-me ao servidor '%.ls' porque '%.ls' não está definido como login remoto no servidor. Verifique se você especificou o nome de login correto. %.*ls. |
Explanation
Este erro ocorre quando tenta configurar um distribuidor de replicação num sistema que foi restaurado usando a imagem do disco rígido de outro computador onde a instância SQL foi originalmente instalada. Uma mensagem de erro semelhante à seguinte é reportada ao utilizador:
O SQL Server Management Studio não conseguiu configurar<Server><Instance>' como distribuidor para '<Server><Instance>'. Erro 18483: Não foi possível ligar-se à '<Server><Instance>' do servidor porque 'distributor_admin' não está definido como login remoto no servidor. Verifique se você especificou o nome de login correto. %.*ls.
Motivo
Quando implementa o SQL Server a partir de uma imagem de disco rígido de outro computador onde o SQL Server está instalado, o nome da rede do computador imaginado é mantido na nova instalação. O nome incorreto da rede faz com que a configuração do distribuidor de replicação falhe. O mesmo problema ocorre se renomear o computador depois de instalar o SQL Server.
Ação do usuário
Para contornar este problema, substitua o nome do servidor SQL Server pelo nome correto da rede do computador. Para o fazer, siga estes passos:
Inicie sessão no computador onde implementou SQL Server a partir da imagem de disco e depois execute a seguinte Transact-SQL instrução no SSMS:
-- Use the Master database USE 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';Reinicie o computador a correr o SQL Server.
Para verificar se o nome SQL Server e o nome da rede do computador são iguais, execute a seguinte instrução Transact-SQL:
SELECT @@SERVERNAME, SERVERPROPERTY('ServerName');
Mais informações
Pode usar a @@SERVERNAME variável global ou a SERVERPROPERTYfunção ('NomeServidor') no SQL Server para encontrar o nome da rede do computador que corre o SQL Server. A propriedade ServerName da SERVERPROPERTY função reporta automaticamente a alteração no nome da rede do computador quando reinicia o computador e o serviço SQL Server. A @@SERVERNAME variável global mantém o nome original do computador SQL Server até que o nome SQL Server seja reiniciado manualmente.
Passos para Reproduzir o Problema
No computador onde implementou o SQL Server a partir de uma imagem de disco, siga estes passos:
Inicie o Management Studio.
No Object Explorer, expanda o nome da sua instância do SQL Server.
Clique com o botão direito na pasta Replicação e clique em Configurar Replicação da Distribuição, e depois clique em Configurar Publicação, Assinantes e Distribuição.
Na caixa de diálogo Configurar Assistente de Distribuição , clique em Próximo.
Na caixa de diálogo Distribuidor, clique para selecionar a '<Instância>do Servidor><' funcionará como um Distribuidor próprio; O SQL Server cria uma base de dados de distribuição e um botão de acesso de registo, e depois clica em Próximo.
Na caixa de diálogo Iniciar do SQL Server Agent, clique em Próximo.
Na caixa de diálogo Pasta Snapshot , clique em Próximo.
Note
Se receber uma mensagem a confirmar o caminho da pasta snapshot, clique em Sim.
Na caixa de diálogo Base de Dados de Distribuição , clique em Próximo.
Na caixa de diálogo Editores , clique em Próximo.
Na caixa de diálogo Ações do Assistente , clique em Próximo.
Na caixa de diálogo Completar o Assistente , clique em Terminar.