Pergunta

Eu estou vendo alguns erros que indicariam um "vazamento de conexão". Ou seja, as conexões que não foram fechadas corretamente ea piscina está se esgotando. Então, como eu vou sobre instrumentação isso para ver exatamente quantos estão abertos em um determinado momento?

Foi útil?

Solução

Se você estiver usando .net, há o provedor de dados .NET para o servidor SQL no PerfMon. Você pode olhar para NumberOfPooledConnections há

Outras dicas

sp_who2 procedimento armazenado na tabela mestre é bom para isso de um lado do banco de dados. Ela vai mostrar as conexões com o banco de dados. Se você está procurando por mais dados tentar perfilar bem.

Implementar um serviço que todas as ligações são criados, aberto e fechado completamente. Segure um contador lá. Registo com a sua estrutura de log cada vez que uma conexão é aberta ou fechada.

Você pode usar a ferramenta Profiler para rastrear todos os existentes e abertura e fechamento conexões

Você pode abrir profiler do gerente de empresa

Se você estiver usando SQL 2000, você pode verificar no SQL 2000 Enterprise Manager:

Para ver a janela Atividade Atual Em SQL Server Enterprise Manager, expanda um grupo de servidores e, em seguida, expandir a servidor. Expanda Gerenciamento e, em seguida, expandir a atividade atual. Clique em Processar Info.

A atividade do servidor atual é exibido no painel de detalhes.

( http://technet.microsoft.com/en-us/ biblioteca / cc738560.aspx )

(De pesquisa do Google: SQL 2000 atividade atual)

Você pode executar sp_who2 no SQL Server Management Studio ou Query Analyzer para ver todas as suas conexões curent. Isso é SQL Server. Eu não tenho certeza que RDBMS que você está usando.

Além disso, olhar em seu código e certifique-se que você fechar uma conexão assim que você não é mais necessário. Seja anal sobre isso!

Use a instrução "usando" para garantir que suas conexões estão sempre fechados e você nunca terá este problema novamente:

using(SqlConnection connection = new SqlConnection())
{
...
} // connection is always disposed (i.e. closed) here, even if an exception is thrown
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top