Văd câteva erori care ar indica o scurgere de conexiune. Adică conexiunile care nu au fost închise corect și piscina se scurge. Deci, cum să procedez la instrumentarea acestui lucru pentru a vedea exact câte persoane sunt deschise la un moment dat?
sp_who2 procedură stocată în tabela de master este frumos pentru acest lucru dintr-o parte a bazei de date. Acesta vă va arăta conexiuni la baza de date. Dacă căutați mai multe date, încercați și profilarea.
Implementați un serviciu pe care toate conexiunile sunt create, deschise și închise. Țineți un contor acolo. Conectați-vă cu cadrul de înregistrare de fiecare dată când o conexiune este deschisă sau închisă.
puteți utiliza instrumentul profiler pentru a urmări toate conexiunile existente și deschiderea și închiderea
Puteți deschide profilul de la managerul de întreprindere
Dacă utilizați SQL 2000, puteți verifica în SQL 2000 Enterprise Manager:
Pentru a vizualiza fereastra Activitate curentă în SQL Server Enterprise Manager, extindeți un grup de server, apoi extindeți a Server. Extindeți Management și apoi extindeți Activitatea curentă. Faceți clic pe Procesare Info.
Activitatea curentă a serverului este afișat în panoul cu detalii.
( http://technet.microsoft.com/en-us/library/cc738560 aspx )
(Din căutarea Google: activitatea curentă sql 2000)
Ați putea rula sp_who2 în SQL Server Management Studio sau Query Analyzer pentru a vedea toate conexiunile dvs. actuale. Acesta este SQL Server. Nu sunt sigur care RDBMS pe care îl utilizați.
De asemenea, uitați-vă în codul dvs. și asigurați-vă că închideți o conexiune imediat ce nu mai aveți nevoie de ea. Fii anal cu privire la asta!
Utilizați instrucțiunea "Utilizare" pentru a vă asigura că conexiunile sunt întotdeauna închise și că nu veți mai avea niciodată această problemă:
using(SqlConnection connection = new SqlConnection())
{
...
}//connection is always disposed (i.e. closed) here, even if an exception is thrown