Ich verwende SQL Server 2008 R2 SP1 auf einem Windows Server 2008-Computer. Ich habe ein .NET-Skript, das in Visual Studio 2010 ausgeführt wird und Folgendes ausführt:
- Greift in die Datenbank ein
- Nimmt eine Änderung vor
- Iteriert
Es werden insgesamt 150 Iterationen durchgeführt, es werden jedoch 100 Verbindungen angehalten, und ich kann nicht herausfinden, warum. Ich könnte mein Skript so anpassen, dass nur ein einziger Thread verwendet wird, aber ich würde es vorziehen, zu wissen, wo ich eine Einstellung für die maximale Verbindung vermisse, da dies für zukünftige Referenzzwecke nützlicher ist.
Hier ist, wo ich bis jetzt überprüft habe:
- SQL-Verbindungszeichenfolge in Visual Studio 2010 (auf 1000 festgelegt)
- Verbindungseigenschaften der SSMS-Datenbankinstanz (auf 0 [unendlich] Benutzerverbindungen festgelegt)
- Wenn Sie einige Informationen zu Server 2008 googeln, können anscheinend mehr als 100 Verbindungen verarbeitet werden
- Ich habe meinen Code durchgearbeitet,
SP_WHO2
der weitere Informationen zu logischen Verbindungen enthält. Dabei wurde festgestellt, dass die Anzahl der Verbindungen bei 52 beginnt und die Skriptfehler bei 152 logischen Verbindungen mit dem Fehler "Max. Verbindungen im Pool erreicht". - Die zu verwendende Verbindungszeichenfolge wurde geändert
Data Source=PerfSQL02;Initial Catalog=Masked;Integrated Security=True;Max Pool Size=1000
Ich bin mir nicht sicher, wo ich sonst nachsehen soll. Ich weiß, dass ich viele bewegliche Teile hier habe, aber ich habe das Gefühl, dass ich irgendwo eine maximale Pooleinstellung verpasse.
System.Data.SqlClient
Standardwert ist 100, weshalb der Verbindungspool erschöpft ist).