Renommer un ordinateur qui héberge une instance autonome de SQL Server

S’applique à : SQL Server - Windows uniquement

Lorsque vous modifiez le nom de l'ordinateur qui exécute SQL Server, le nouveau nom est reconnu au démarrage de SQL Server . Vous n’avez pas besoin de réexécuter le programme d’installation pour réinitialiser le nom de l’ordinateur. À la place, utilisez la procédure suivante pour mettre à jour les métadonnées système qui sont stockées dans sys.servers et signalées par la fonction système @@SERVERNAME. Mettez à jour les métadonnées système pour refléter les modifications opérées dans les noms d’ordinateurs pour les connexions à distance et les applications qui utilisent @@SERVERNAME, ou qui interrogent le nom du serveur à partir de sys.servers.

Les procédures suivantes ne vous permettent pas de renommer une instance de SQL Server. Elles ne peuvent être utilisées que pour renommer la partie du nom de l'instance qui correspond au nom de l'ordinateur. Par exemple, vous pouvez remplacer le nom d'un ordinateur nommé MB1 qui héberge une instance de SQL Server nommée Instance1 par un autre nom, tel que MB2. Cependant, la partie d'instance du nom, Instance1, restera inchangée. Dans cet exemple, la partie \\<ComputerName>\<InstanceName> passera de \\MB1\Instance1 à \\MB2\Instance1.

Prérequis

Avant d'entamer la procédure consistant à attribuer un nouveau nom, prenez connaissance des informations suivantes :

  • Lorsqu'une instance de SQL Server fait partie d'un cluster de basculement SQL Server , le processus permettant de renommer l'ordinateur diffère du processus permettant de renommer un ordinateur qui héberge une instance autonome. Pour plus d’informations, consultez Renommer une instance de cluster de basculement SQL Server.

  • SQL Server ne prend pas en charge la modification de nom des ordinateurs impliqués dans la réplication, excepté lorsque vous utilisez la copie des journaux de transaction avec la réplication. L'ordinateur secondaire pour la copie des journaux de transaction peut être renommé si l'ordinateur principal est définitivement perdu. Pour plus d’informations, consultez Copie des journaux de transaction et réplication (SQL Server).

  • Lorsque vous renommez un ordinateur configuré pour utiliser Reporting Services, Reporting Services peut ne pas être disponible après la modification du nom d'ordinateur. Pour plus d’informations, consultez Changement de nom d’un ordinateur serveur de rapports.

  • Lorsque vous renommez un ordinateur configuré pour utiliser la mise en miroir de bases de données, vous devez désactiver cette fonction avant de modifier le nom. Ensuite, vous devez la réactiver avec le nouveau nom de l'ordinateur. Les métadonnées de la mise en miroir de bases de données ne seront pas mises à jour automatiquement de façon à refléter le nouveau nom de l'ordinateur. Procédez comme suit pour mettre à jour les métadonnées système :

  • Les utilisateurs qui se connectent à SQL Server par le biais d'un groupe Windows utilisant une référence codée en dur au nom de l'ordinateur risquent de ne pas pouvoir se connecter à SQL Server. Cela peut se produire après l'attribution du nouveau nom si le groupe Windows spécifie l'ancien nom de l'ordinateur. Pour vous assurer que ces groupes Windows bénéficient de la connectivité SQL Server après l'opération de changement de nom, mettez à jour le groupe Windows pour spécifier le nouveau nom de l'ordinateur.

Vous pouvez vous connecter à SQL Server à l'aide du nouveau nom de l'ordinateur après avoir redémarré SQL Server. Pour vous assurer que @@SERVERNAME retourne le nom mis à jour de l’instance de serveur local, vous devez exécuter manuellement la procédure suivante qui s’applique à votre scénario. La procédure à utiliser varie selon que vous mettez à jour un ordinateur qui héberge une instance par défaut ou une instance nommée de SQL Server.

Renommer un ordinateur qui héberge une instance autonome de SQL Server

  • Dans le cas d'un ordinateur renommé qui héberge une instance par défaut de SQL Server, exécutez les procédures ci-dessous :

    EXEC sp_dropserver '<old_name>';
    GO
    EXEC sp_addserver '<new_name>', local;
    GO
    

    Redémarrez l'instance de SQL Server.

  • Dans le cas d'un ordinateur renommé qui héberge une instance nommée de SQL Server, exécutez les procédures ci-dessous :

    EXEC sp_dropserver '<old_name\instancename>';
    GO
    EXEC sp_addserver '<new_name\instancename>', local;
    GO
    

    Redémarrez l'instance de SQL Server.

Après l’opération de changement de nom

Une fois l'ordinateur redémarré, toutes les connexions qui utilisaient l'ancien nom de l'ordinateur doivent se connecter à l'aide du nouveau nom.

Vérifier l’opération de changement de nom

  • Sélectionnez des informations à partir de @@SERVERNAME ou de sys.servers. La fonction @@SERVERNAME retourne le nouveau nom et la table sys.servers affiche le nouveau nom. L’exemple suivant illustre l’utilisation de @@SERVERNAME.

    SELECT @@SERVERNAME AS 'Server Name';
    

Considérations supplémentaires

Supprimer des connexions

Si des sessions à distance sont ouvertes sur l’ordinateur, l’exécution de sp_dropserver risque de générer une erreur semblable à la suivante :

Server: Msg 15190, Level 16, State 1, Procedure sp_dropserver, Line 44 There are still remote logins for the server 'SERVER1'.

Pour résoudre l'erreur, vous devez supprimer les ouvertures de session à distance du serveur.

  • Dans le cas d'une instance par défaut, suivez la procédure ci-dessous :

    EXEC sp_dropremotelogin old_name;
    GO
    
  • Dans le cas d'une instance nommée, suivez la procédure ci-dessous :

    EXEC sp_dropremotelogin old_name\instancename;
    GO
    

Configurations de serveur lié

L’opération de changement de nom d’ordinateur affecte les configurations du serveur lié. Utilisez sp_addlinkedserver ou sp_setnetname pour mettre à jour les références de nom d'ordinateur. Pour plus d’informations, consultez le sp_addlinkedserver ou sp_setnetname.

Noms d’alias de client

L’opération de changement de nom d’ordinateur affecte les alias clients qui utilisent des canaux nommés. Par exemple, si un alias PROD_SRVR a été créé pour désigner SRVR1 et utilise le protocole de canaux nommés, le nom de canal ressemblera à \\SRVR1\pipe\sql\query. Après avoir renommé l’ordinateur, le chemin d’accès du canal nommé ne sera plus valide. Pour plus d’informations sur les canaux nommés, consultez Création d’une chaîne de connexion valide à l’aide de canaux nommés.