Modifier les paramètres de SQL Server dans un environnement cluster lorsque SQL Server n'est pas en ligne

Lorsque vous utilisez le gestionnaire de configuration de SQL Server pour modifier les paramètres du Moteur de base de données dans un environnement cluster, vous devez apporter les modifications sur le nœud actif lorsque la ressource de cluster SQL Server est en ligne. Si SQL Server n'est pas en ligne, vous devez commencer par mettre SQL Server en ligne. Toutefois, dans certains cas, vous risquez de ne pas pouvoir mettre SQL Server en ligne.

Cet article explique comment modifier les paramètres de SQL Server dans un environnement cluster lorsque SQL Server n'est pas en ligne ou que vous ne pouvez pas mettre SQL Server en ligne.

Pour modifier les paramètres de Moteur de base de données dans un environnement cluster lorsque SQL Server n'est pas en ligne, utilisez l'une des méthodes suivantes.

Méthode 1

Essayez d'utiliser cette méthode en premier.

AttentionAttention

Cette section, méthode ou tâche contient les étapes qui vous indiquent comment modifier le Registre. Toutefois, des erreurs graves peuvent se produire si vous modifiez incorrectement le Registre. Vérifiez donc que vous suivez ces étapes avec précaution. Pour une protection étendue, sauvegardez le Registre avant de le modifier. De cette manière, vous pourrez restaurer le Registre si un problème survient. Pour plus d'informations sur la procédure de sauvegarde et de restauration du Registre, cliquez sur le numéro d'article suivant pour afficher l'article de la Base de connaissances de Microsoft Base de connaissances 322756 : Procédure de sauvegarde et de restauration du Registre dans Windows.

  1. Dans le menu Démarrer, cliquez sur Exécuter, tapez regedit, puis cliquez sur OK.

  2. Recherchez le disque quorum. Pour ce faire, accédez à la clé de Registre suivante : HKEY_LOCAL_MACHINE\Cluster\Quorum

    L'entrée Path contient le chemin d'accès au disque quorum. Par exemple, l'entrée Path contient le chemin d'accès suivant : <QuorumDrive>:\MSCS

  3. Recherchez le GUID de la ressource de cluster SQL Server. Pour cela, procédez comme suit :

    1. Recherchez la clé de Registre suivante : HKEY_LOCAL_MACHINE\Cluster\Resources

    2. Examinez la colonne Nom des entrées de Registre.

      [!REMARQUE]

      Plusieurs entrées de Registre contiennent GUID dans leur nom.

    3. Pour l'instance par défaut, localisez la ressource de cluster SQL Server qui inclut SQL Server dans la colonne Nom. Pour les instances nommées, recherchez les ressources de cluster SQL Server qui incluent « SQL Server (<InstanceName>) » dans la colonne Nom.

  4. Recherchez le nom de fichier du point de contrôle. Pour cela, procédez comme suit :

    1. Recherchez la clé de Registre suivante : HKEY_LOCAL_MACHINE\Cluster\Resources\{GUID}\RegSync

    2. Dans le volet d'informations, consultez les ruches de Registre de point de contrôle et les numéros correspondants qui se présentent comme suit :

      • Pour l'instance par défaut : 00000004 SOFTWARE\Microsoft\Microsoft SQL Server\MSSQLSERVER

      • Pour une instance nommée : 00000004 SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.X\MSSQLSERVER

        [!REMARQUE]

        Pour une instance nommée, X correspond à l'ID d'instance.

    Le numéro correspond au nom de fichier du point de contrôle. Dans cet exemple, le nom de fichier du point de contrôle est 00000004.cpt.

  5. Dans l'Éditeur du Registre, cliquez sur HKEY_LOCAL_MACHINE.

  6. Dans le menu Fichier, cliquez sur Chargement de la ruche.

  7. Dans le dossier <QuorumDrive>:\<GUID>, recherchez le fichier de point de contrôle que vous avez trouvé à l'étape 4.

  8. Dans la zone Nom de la clé, tapez 1, puis cliquez sur OK.

  9. Recherchez la clé de Registre suivante pour corriger la valeur de clé de Registre de point de contrôle non valide : HKEY_LOCAL_MACHINE\1\<YourRegistryKey>

    [!REMARQUE]

    Les exemples suivants corrigent la clé de Registre de point de contrôle MSSQLSERVER :

    Exemple 1 : pour corriger le chemin d'accès incorrect du fichier master.mdf, recherchez la clé de Registre : HKEY_LOCAL_MACHINE\1\Parameters. Corrigez la clé SQLArg0.

    Exemple 2 : pour désactiver le protocole VIA incorrectement activé, recherchez la clé de Registre suivante : HKEY_LOCAL_MACHINE\1\SuperSocketNetLib\Via. Remplacez la valeur de l'entrée Activé définie sur 1 par 0.

  10. Une fois que vous avez corrigé la clé de Registre, cliquez sur HKEY_LOCAL_MACHINE\1, puis sur le menu Fichier et enfin sur Décharger la ruche.

[!REMARQUE]

Une fois que vous avez suivi ces étapes, ce point de contrôle est réparé et répliqué sur le nœud spécifique automatiquement pendant le basculement. Vous pouvez mettre l'instance de SQL Server en ligne.

Méthode 2

Les clés de Registre de point de contrôle sont enregistrées uniquement lorsque les ressources associées sont en ligne. Lorsque les ressources ne sont pas en ligne, les modifications apportées aux clés de point de contrôle sont remplacées par les dernières valeurs stockées dans le fichier de point de contrôle. Pour plus d'informations, consultez Base de connaissances 174070 : Réplication de Registre dans Microsoft Cluster Server

Important

  • N'exécutez pas le basculement de groupe de clusters de SQL Server entre l'étape 2 et l'étape 4. De même, si vous ne réalisez pas toutes ces étapes, un comportement inattendu risque d'apparaître en cas de basculement.

  • Pour l'étape 2 et l'étape 4, MSSQL.x, MSQL10.x et MSSQL10_50.x représentent des espaces réservés pour l'ID d'instance respectif de l'instance de SQL Server. Vous pouvez déterminer la valeur correspondante pour le système de la valeur de l'entrée de Registre MSSQLSERVER dans la sous-clé de Registre suivante : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<InstanceName>\SQL\

  • Pour l'étape 2 et l'étape 4, <InstanceName> est un espace réservé pour le nom de l'instance de SQL Server.

  1. À l'invite de commandes, obtenez la liste des clés de point de contrôle à l'aide de la commande suivante :

    cluster res /checkpoints
    
  2. À l'invite de commandes, exécutez l'une des commandes suivantes pour désactiver le point de contrôle de cluster pour la sous-clé de Registre spécifique :

    • Dans le cas d'une instance de SQL Server 2012, exécutez la commande ci-dessous :

      cluster . resource "SQL Network Name (<InstanceName>)" /removecheckpoints:"Software\Microsoft\Microsoft SQL Server\MSSQL110.x\MSSQLSERVER"
      
    • Dans le cas d'une instance de SQL Server 2008 R2, exécutez la commande ci-dessous :

      cluster . resource "SQL Network Name (<InstanceName>)" /removecheckpoints:"Software\Microsoft\Microsoft SQL Server\MSSQL10_50.x\MSSQLSERVER"
      
    • Dans le cas d'une instance de SQL Server 2008, exécutez la commande ci-dessous :

      cluster . resource "SQL Network Name (<InstanceName>)" /removecheckpoints:"Software\Microsoft\Microsoft SQL Server\MSSQL10.x\MSSQLSERVER"
      
    • Dans le cas d'une instance de SQL Server 2005, exécutez la commande ci-dessous :

      cluster res "SQL Server (<InstanceName>)" /removecheck: "Software\Microsoft\Microsoft SQL Server\MSSQL.x \MSSQLSERVER"
      
  3. Modifiez le paramètre pour l'instance cluster de SQL Server sur tous les nœuds.

  4. À l'invite de commandes, exécutez l'une des commandes suivantes pour activer le point de contrôle de cluster pour la sous-clé de Registre spécifique :

    • Dans le cas d'une instance de SQL Server 2008, exécutez la commande ci-dessous :

      cluster . resource "SQL Server (<InstanceName>)" /addcheckpoints:"HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\MSSQL.x\MSSQLSERVER"
      
    • Dans le cas d'une instance de SQL Server 2005, exécutez la commande ci-dessous :

      cluster res "SQL Server (<InstanceName>)" /addcheck: "Software\Microsoft\Microsoft SQL Server\MSSQL.x\MSSQLSERVER"
      
  5. Mettez l'instance de SQL Server en ligne.

Exemple de résultat pour la méthode 2 sur les serveurs SQL Server 2008

cluster res /checkpoints
No resource name specified.
Listing registry checkpoints for all resources …
Resource                            Registry Checkpoint
--------------------                --------------------------------------------------------

SQL Network Name (<Instance name>) 'SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<INSTANCE NAME>\Cluster'

SQL Network Name (<INSTANCE NAME>) 'SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<INSTANCE NAME>\MSSQLServer'

SQL Network Name (<INSTANCE NAME>) 'SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<INSTANCE NAME>\Replication'

SQL Network Name (<INSTANCE NAME>) 'SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<INSTANCE NAME>\Providers'

SQL Network Name (<INSTANCE NAME>) 'SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<INSTANCE NAME>\SQLServerSCP'

SQL Network Name (<INSTANCE NAME>) 'SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<INSTANCE NAME>\CPE'

SQL Network Name (<INSTANCE NAME>) 'SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL10.<INSTANCE NAME>\SQLServerAgent'

SQL IP Address 1 (<INSTANCE NAME>) None

SQL Server (<INSTANCE NAME>)       None

SQL Server Agent (<INSTANCE NAME>) None

C:\Windows\system32>cluster . resource "SQL Network Name (<INSTANCE NAME>)" /removecheckpoints:"Software\Microsoft\Microsoft SQL Server\MSSQL10.<INSTANCE NAME>\MSSQLSERVER" 

Removing registry checkpoint 'Software\Microsoft\Microsoft SQL Server\MSSQL10.EI

PRPTDB\MSSQLSERVER' for resource 'SQL Network Name (<INSTANCE NAME>)'...

Voir aussi

Concepts

Configurer les options de démarrage du serveur (Gestionnaire de configuration SQL Server)

Autres ressources

Base de connaissances 912397 : Le service SQL Server ne peut pas démarrer lorsque vous remplacez un paramètre de démarrage d'une instance de cluster de SQL Server 2000 ou SQL Server 2005 par une valeur non valide

Base de connaissances 244980 : Procédure pour modifier les adresses IP réseau d'instances de cluster de basculement de SQL Server