MSSQLSERVER_18483
S'applique à : SQL Server
Détails
Attribut | Valeur |
---|---|
Nom du produit | SQL Server |
ID de l’événement | 18483 |
Source de l’événement | MSSQLSERVER |
Composant | SQLEngine |
Nom symbolique | REMLOGIN_INVALID_USER |
Texte du message | Impossible de se connecter au serveur '%.ls', car '%.ls' n'est pas défini comme ouverture de session distante sur le serveur. Vérifiez que vous avez spécifié le bon nom d'ouverture de session. %.*ls. |
Explication
Cette erreur se produit lorsque vous tentez de configurer un serveur de distribution de réplication sur un système qui a été restauré à l’aide de l’image de disque dur d’un autre ordinateur sur lequel l’instance SQL a été installée à l’origine. Un message d’erreur semblable au suivant est signalé à l’utilisateur :
SQL Server Management Studio n’a pas pu configurer «< Instance de serveur><» comme serveur de distribution pour «< Instance> de serveur><> ». Erreur 18483 : Impossible de se connecter au serveur «<>< Instance> de serveur », car « distributor_admin » n’est pas défini comme une connexion distante sur le serveur. Vérifiez que vous avez spécifié le bon nom d'ouverture de session. %.*ls.
Cause
Lorsque vous déployez SQL Server à partir d’une image de disque dur d’un autre ordinateur sur lequel SQL Server est installé, le nom réseau de l’ordinateur imagené est conservé dans la nouvelle installation. Le nom de réseau incorrect entraîne l’échec de la configuration du serveur de distribution de réplication. Le même problème se produit si vous renommez l’ordinateur après l’installation de SQL Server.
Action utilisateur
Pour contourner ce problème, remplacez le nom du serveur SQL Server par le nom réseau approprié de l’ordinateur. Pour ce faire, procédez comme suit :
Connectez-vous à l’ordinateur sur lequel vous avez déployé SQL Server à partir de l’image de disque, puis exécutez l’instruction Transact-SQL suivante dans 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';
Redémarrez l’ordinateur exécutant SQL Server.
Pour vérifier que le nom de SQL Server et le nom réseau de l’ordinateur sont identiques, exécutez l’instruction Transact-SQL suivante :
SELECT @@SERVERNAME, SERVERPROPERTY('ServerName');
Plus d’informations
Vous pouvez utiliser la @@SERVERNAME
variable globale ou la SERVERPROPERTY
fonction ('ServerName') dans SQL Server pour rechercher le nom réseau de l’ordinateur exécutant SQL Server. La propriété ServerName de la SERVERPROPERTY
fonction signale automatiquement la modification du nom réseau de l’ordinateur lorsque vous redémarrez l’ordinateur et le service SQL Server. La @@SERVERNAME
variable globale conserve le nom d’ordinateur SQL Server d’origine jusqu’à ce que le nom SQL Server soit réinitialisé manuellement.
Étapes pour reproduire le problème
Sur l’ordinateur sur lequel vous avez déployé SQL Server à partir d’une image de disque, procédez comme suit :
Démarrez Management Studio.
Dans l’Explorateur d’objets, développez le nom de votre instance SQL Server.
Cliquez avec le bouton droit sur le dossier Réplication puis cliquez sur Configurer la réplication de distribution, puis sur Configurer la publication, les abonnés et la distribution.
Dans la boîte de dialogue de l’assistant Configurer la distribution, cliquez Suivant.
Dans la boîte de dialogue Serveur de distribution, cliquez pour sélectionner l’instance> de< serveur><qui agit comme son propre serveur de distribution ; SQL Server crée une base de données de distribution et une case d’option de journal, puis cliquez sur Suivant.
Dans la boîte de dialogue Démarrage de SQL Server Agent, cliquez sur Suivant.
Dans la boîte de dialogue Dossier d’instantanés, cliquez sur Suivant.
Remarque
Si vous recevez un message pour confirmer le chemin d’accès au dossier d’instantanés, cliquez sur Oui.
Dans la boîte de dialogue Base de données de distribution, cliquez sur Suivant.
Dans la boîte de dialogue Serveurs de publication, cliquez sur Suivant.
Dans la boîte de dialogue Actions de l’assistant, cliquez sur Suivant.
Dans la boîte de dialogue Terminer l’assistant, cliquez sur Terminer.