Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Details
| Attribute | Value |
|---|---|
| Productnaam | SQL Server |
| Gebeurtenis-id | 18483 |
| Bron van gebeurtenis | MSSQLSERVER |
| Onderdeel | SQLEngine |
| Symbolische naam | REMLOGIN_INVALID_USER |
| Berichttekst | Kon geen verbinding maken met server '%.ls' omdat '%.ls' niet als een remote login op de server wordt gedefinieerd. Controleer of u de juiste aanmeldingsnaam hebt opgegeven. %.*ls. |
Explanation
Deze fout doet zich voor wanneer je probeert een replicatiedistributeur te configureren op een systeem dat is hersteld met behulp van de harde schijfimage van een andere computer waar de SQL-instantie oorspronkelijk is geïnstalleerd. Een foutmelding vergelijkbaar met de volgende wordt aan de gebruiker gemeld:
SQL Server Management Studio kon niet configureren '<Server><Instance>' als distributeur voor '<Server><Instance>'. Fout 18483: Kon niet verbinden met server '<Server><Instance>' omdat 'distributor_admin' niet wordt gedefinieerd als een remote login op de server. Controleer of u de juiste aanmeldingsnaam hebt opgegeven. %.*ls.
Oorzaak
Wanneer je SQL Server deployt vanaf een harde schijfimage van een andere computer waar SQL Server is geïnstalleerd, blijft de netwerknaam van de geimagede computer behouden in de nieuwe installatie. De verkeerde netwerknaam veroorzaakt dat de configuratie van de replicatiedistributeur faalt. Hetzelfde probleem doet zich voor als je de computer hernoemt nadat SQL Server is geïnstalleerd.
Gebruikersactie
Om dit probleem te omzeilen, vervang je de SQL Server-servernaam door de juiste netwerknaam van de computer. Voer hiervoor de volgende stappen uit:
Log in op de computer waar je SQL Server hebt uitgerold vanaf de schijfimage en voer vervolgens de volgende Transact-SQL-instructie uit in 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';Herstart de computer met SQL Server.
Om te verifiëren dat de naam SQL Server en de netwerknaam van de computer hetzelfde zijn, voer je de volgende Transact-SQL-instructie uit:
SELECT @@SERVERNAME, SERVERPROPERTY('ServerName');
Meer informatie
Je kunt de @@SERVERNAME globale variabele of de SERVERPROPERTYfunctie 'ServerName') in SQL Server gebruiken om de netwerknaam van de computer die SQL Server draait te vinden. De ServerName-eigenschap van de functie rapporteert SERVERPROPERTY automatisch de wijziging in de netwerknaam van de computer wanneer je de computer en de SQL Server-service herstart. De @@SERVERNAME globale variabele behoudt de oorspronkelijke SQL Server-computernaam totdat de naam van de SQL Server handmatig wordt gereset.
Stappen voor het reproduceren van het probleem
Op de computer waar je SQL Server vanaf een schijfimage hebt geïmplementeerd, volg je deze stappen:
Start Management Studio.
In de Objectverkenner breidt u de naam van uw SQL Server-instantie uit.
Klik met de rechtermuisknop op de Replicatiemap en kies op Configuratie Distributie Replicatie, en klik vervolgens op Configureren Publicatie, Abonnees en Distributie.
Klik in het dialoogvenster 'Configuratie Distributiewizard ' op Volgende.
In het dialoogvenster Distributor klikt u om '<Server><Instance>' te selecteren, die als eigen Distributor fungeert; SQL Server maakt een distributiedatabase en log-radioknop aan, en klikt vervolgens op Volgende.
Klik in het SQL Server Agent Start-dialoogvenster op Volgende.
Klik in het dialoogvenster Snapshot Map op Volgende.
Note
Als je een bericht ontvangt om het pad van de snapshotmap te bevestigen, klik dan op Ja.
Klik in het dialoogvenster Distributiedatabase op Volgende.
Klik in het venster Uitgevers op Volgende.
Klik in het dialoogvenster Wizard Actions op Volgende.
Klik in het dialoogvenster 'De Tovenaar voltooien ' op Voltooien.