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 '< Server><Instance> » en tant que serveur de distribution pour «<>< Server Instance> ». Erreur 18483 : Impossible de se connecter au serveur «< Server><Instance> », 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 de l’image 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 requise

Pour contourner ce problème, remplacez le nom de serveur SQL Server par le nom de réseau correct de l’ordinateur. Pour ce faire, procédez comme suit :

  1. 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';
    
  2. Redémarrez l’ordinateur exécutant SQL Server.

  3. Pour vérifier que le nom SQL Server et le nom réseau de l’ordinateur sont identiques, exécutez l’instruction Transact-SQL suivante :

    SELECT @@SERVERNAME, SERVERPROPERTY('ServerName');
    

Informations complémentaires

Vous pouvez utiliser la variable globale @@SERVERNAME ou la fonction SERVERPROPERTY('ServerName') dans SQL Server pour rechercher le nom réseau de l’ordinateur exécutant SQL Server. La propriété ServerName de la fonction SERVERPROPERTY signale automatiquement la modification du nom réseau de l’ordinateur lorsque vous redémarrez l’ordinateur et le service SQL Server. La variable globale @@SERVERNAME conserve le nom de l’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 où vous avez déployé SQL Server à partir d’une image de disque, procédez comme suit :

  1. Démarrez Management Studio.

  2. Dans l’Explorateur d’objets, développez le nom de votre instance SQL Server.

  3. 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.

  4. Dans la boîte de dialogue de l’assistant Configurer la distribution, cliquez Suivant.

  5. Dans la boîte de dialogue Serveur de distribution, cliquez pour sélectionnerl’instance> de<serveur>< qui agit comme son propre serveur de distribution ; SQL Server créez une base de données de distribution et une case d’option de journal, puis cliquez sur Suivant.

  6. Dans la boîte de dialogue Démarrage de SQL Server Agent, cliquez sur Suivant.

  7. Dans la boîte de dialogue Dossier d’instantanés, cliquez sur Suivant.

    Notes

    Si vous recevez un message pour confirmer le chemin d’accès au dossier d’instantanés, cliquez sur Oui.

  8. Dans la boîte de dialogue Base de données de distribution, cliquez sur Suivant.

  9. Dans la boîte de dialogue Serveurs de publication, cliquez sur Suivant.

  10. Dans la boîte de dialogue Actions de l’assistant, cliquez sur Suivant.

  11. Dans la boîte de dialogue Terminer l’assistant, cliquez sur Terminer.

Voir aussi