web-dev-qa-db-fra.com

Comment renommer une instance SQL Server 2008?

Comment renommer une instance SQL Server 2008 sans réinstaller?

Par exemple, si la base de données est référencée comme "MySQLServer\MSSQL2008", comment puis-je renommer "MySQLServer\SQL2008"?

28
Scott Marlowe

Je ne pense pas qu'il soit possible de renommer sans installer.

Il y a des traces laissées au nom dans quelques bases de données internes telles que la réplication et vous pouvez trouver des erreurs plus tard.

Si vous le pouvez, à moins que vous n'ayez plus d'une instance, il vaut mieux réinstaller puis réimporter toutes vos bases de données.

31
William Hilsum

Je sais que ce script est omniprésent sur le "net", mais chaque fois que je le recherche sur Google, je trouve des processus stockés élaborés qui sont exagérés pour mes besoins - voici donc les commandes nécessaires pour renommer une instance SQL Server, pour la postérité:

  • Obtenez le nom actuel de l'instance SQL Server pour une comparaison ultérieure.
    SELECT @@servername
  • Supprimez le serveur de la liste des serveurs distants et liés connus sur l'instance locale de SQL Server.
    EXEC master.dbo.sp_dropserver ‘[SERVER NAME]‘
  • Définissez le nom de l'instance locale de SQL Server.
    EXEC master.dbo.sp_addserver ‘[NEW SERVER NAME]‘, ‘local’
  • Obtenez le nouveau nom de l'instance SQL Server pour comparaison. SELECT @@servername

Et quelques notes relatives à leur utilisation:
sp_dropserver :

  1. Cette procédure stockée peut supprimer les serveurs distants et liés;
  2. L'utilisation du paramètre droplogins indique que les connexions au serveur distant et lié associées pour [SERVER NAME] doivent également être supprimées.

sp_addserver :

  1. Pour définir un serveur lié, utilisez sp_addlinkedserver (car cette fonctionnalité sera dépréciée dans la version supérieure à SQL Server 2005);
  2. sp_addserver ne peut pas être utilisé dans une transaction définie par l'utilisateur.

Je recommanderais également les éléments suivants lors du changement de nom d'un serveur SQL:
Si vous effectuez cette tâche dans le cadre d'un changement de nom de machine, renommez d'abord la machine, puis renommez SQL Server. Une fois que vous avez renommé SQL Server, effectuez un redémarrage complet de SQLServer, y compris tout service dépendant.

J'ai obtenu ces informations à partir du lien ci-dessous:

https://web.archive.org/web/20141116031942/http://modhul.com/2008/01/15/renaming-a-sql-server-instance/

9
arunmanikumar

Juste une petite note que vous pouvez ajouter un "alias" et l'utiliser sous les deux noms:

enter image description here

1
jitbit

select @@servername affichera le nouveau nom mais le nom du serveur dans ERRORLOG affichera l'ancien nom et vous ne pouvez pas vous connecter en utilisant le nouveau nom.

La seule solution est de réinstaller.

0
Ben