SQL Server enregistre 17832 avec plusieurs demandes de connexion TCP\IP

Traductions disponibles Traductions disponibles
Numéro d'article: 154628 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Résumé

Si SQL Server est atteint avec multiples et simultanées TCP/IP les demandes de connexion, tels que le cas avec les serveurs de site Web, les demandes sont rejetées rapidement en répondant par un frame de réinitialiser TCP/IP.

Ce problème est difficile à détecter. Si l'application client comprend la gestion de code d'erreur, le code d'erreur natif est 10061 (WSAECONNREFUSED) pour le Open() fonction. Sur le serveur, une erreur 17832-«Impossible de lire le paquet de connexion» s'affiche dans le journal des erreurs de SQL.

Si le suivi de ce problème avec un analyseur de protocole, vous pouvez voir que certains de la connexion demandent trames ont été répondus à avec le jeu de bit TCP Reset, qui indique à la station émettrice que la trame a été reçue, mais le serveur n'a pas les ressources pour traiter la demande de connexion.

Plus d'informations

Une application Winsock accepte des connexions sur un port en appelant une fonction Listen(), qui a un paramètre de backlog spécifiant la longueur maximale de la file d'attente en attente-connexion. La spécification Winsock définit le retard Listen() maximal à cinq et lorsqu'elle dépasse cinq, TCP/IP émet une réinitialisation.

Le journal des travaux en souffrance pour SQL Server peut être configuré pour gérer un grand nombre de connexions en attente en modifiant le Registre Windows NT. Dans certains cas, le problème de réinitialisation de connexion est résolu en raison de la modification.

Important Cette section, la méthode ou la tâche contient des étapes qui vous indiquent comment modifier le Registre. Toutefois, des problèmes graves peuvent se produire si vous modifiez le Registre de façon incorrecte. Par conséquent, assurez-vous que vous procédez comme suit avec soin. Pour plus de protection, sauvegardez le Registre avant de le modifier. Ensuite, vous pouvez restaurer le Registre en cas de problème. Pour plus d'informations sur la façon de sauvegarder et restaurer le Registre, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
322756Comment faire pour sauvegarder et restaurer le Registre dans Windows
  1. Démarrez l'Éditeur du Registre (Regedt32.exe) et recherchez la sous-clé suivante :
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer
    Notes
    • La sous-clé de Registre correspondante dans la sous-arborescence HKEY_LOCAL_MACHINE pour 4. 21 a SQL est :
      \Software\Microsoft\SQLServer\Server
    • Si SQL Server 6.5 Édition entreprise est en cours d'exécution avec un serveur SQL virtuel dans un environnement en clusters, vous devez apporter la modification de clé de serveur virtuel, plutôt que la norme :
      \Software\Microsoft\MSSQLServer\MSSQLServer
      Cette clé de serveur virtuel est :
      \Software\Microsoft\MSSQLServer$VirtualServerName
      \MSSQLServer$VirtualServerName

      Nom de la valeur : WinsockListenBacklog
      Type de données : REG_DWORD
      Données : 190
    • Le nouvel emplacement de Registre pour SQL Server 2000 :

      Pour une instance par défaut :
      HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib
      Pour une instance nommée :
      HKEY_LOCAL_MACHINE\Software\Microsoft\Microsoft SQL Server\ Instance Name \MSSQLServer\SuperSocketNetLib
  2. Sélectionnez la sous-clé MSSQLServer pour SQL Server 6.5 et SQL Server 7.0, puis sélectionnez le SuperSocketNetLib pour SQL Server 2000. Dans le menu Edition, cliquez sur Ajouter une valeur.
  3. Entrez les informations suivantes :
    Nom de la valeur : WinsockListenBacklog
    Type de données : REG_DWORD
    Données : Range is 1 to 0xFFFFFFFF
    Remarque La valeur des données affecte les ressources système globale si elle est définie sur une valeur élevée. Windows NT 3.51 a un retard de traitement globale maximale de 100 et Windows NT 4.0 a un retard de traitement globale maximale de 200 pour toutes les applications. La méthode suggérée de test avec cette valeur consiste à définir la valeur par incréments de cinq et observez les résultats jusqu'à ce que la connexion réinitialisée s'arrête.
  4. Cliquez sur OK et quittez l'Éditeur du Registre.
  5. Redémarrez SQL Server.
Pour plus d'informations sur la fonction Listen(), consultez référence du programmeur Win32 SDK.

Pour plus d'informations sur le paramètre backlog et Windows NT, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la base de connaissances Microsoft :
113576Applications WinSocket rejeter les demandes de connexion des cadres de réinitialisation
127144Windows NT WinSock écouter (backlog) la limite de paramètre

Propriétés

Numéro d'article: 154628 - Dernière mise à jour: mercredi 24 septembre 2008 - Version: 5.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft SQL Server 7.0 Standard
  • Microsoft SQL Server 6.5 Édition Standard
  • Microsoft SQL Server 6.0 Standard
  • Microsoft SQL Server 2000 Standard
  • Microsoft SQL Server 2000 Édition Entreprise
  • Microsoft SQL Server 2000 Édition Développeur
  • Microsoft SQL Server 2000 Workgroup Edition
Mots-clés : 
kbmt kbnetwork KB154628 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 154628
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com