jdbc mysql no chão  XML
Índice dos Fóruns » Desenvolvimento Web
Autor Mensagem
kuesley
JavaBaby

Membro desde: 14/03/2005 00:16:00
Mensagens: 89
Localização: Brasilia / DF
Offline

Senhores,

Estou me deparando com uma situação que não quer me deixar em paz.
Tenho uma aplicação muito simples, que faz uma consulta no mysql só que toda manhã a conexão não pode mais ser realizada.
Já fiz de tudo, até troquei SO, coloquei o servidor de BD na mesma maquina e o erro persiste. Estive lendo na net e o pessoal me disse que é um problema como driver jdbc do mysql que tem esse problema. O erro é o seguinte:



Já li e disseram que existe uma versao ALPHA do jdbc/mysql que é estável, quase morri quando li isso. Alguém já passou por isso?

Abraços a todos.

Curioso...
keller
GUJ Master
[Avatar]

Membro desde: 12/11/2003 16:24:00
Mensagens: 1817
Localização: Auckland - NZ
Offline

Existe a possibilidade de trocar de banco de dados?

Acredito que essa seja a solucao, talvez a aplicação
que tu desenvolveu ganhou um "corpo" muito mais forte
que o esperado , e o mysql nao está aguentando isso..

Fora isso tu pode tentar o driver jdbc do MySQL alpha que
tu ja mencionou.. realmente uma situação complicada..

Espero que ajude em algo..
Até..

Guilherme I. Keller (Gui)
Diploma in Web Development and Desktop Publishing
SCJA | SCJP | SCWCD | SCBCD | CSM
"Test it, before it test you."
http://flickr.com/guikeller
[WWW] [MSN]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Tem certeza que o problema é do mysql? Não é a sua aplicação que está deixando as conexões abertas ou mantendo conexões abertas por tempo demais até receber um timeout?

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
kuesley
JavaBaby

Membro desde: 14/03/2005 00:16:00
Mensagens: 89
Localização: Brasilia / DF
Offline

Senhores,

Eu tenho uma aplicação bem maior funcionando bem com a mesma arquitetura de conexão só que no firebird (essa aplicação NUNCA parou).
Se alguém já passou por isso, ajudem um servo de Deus.
Estou pra trocar o banco como o gui sugeriu

Agradeço a todos pelas dicas.

Curioso...
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Que tal você explicar como funciona o modo de obtenção das conexões para a aplicação? Tá usando um data source? Tá usando um pool de conexões? As conexões estão sendo fechadas corretamente? Quem fecha? Quando fecha?

Não dá pra adivinhar o problema com tão pouca informação.

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
kuesley
JavaBaby

Membro desde: 14/03/2005 00:16:00
Mensagens: 89
Localização: Brasilia / DF
Offline

Opa Mauricio entao vai lá.

Realmente eu vacilei, é por que esse erro acontece de qualquer forma:

usando data source (jndi)
hibernate
jdbc puro (pool de conexoes)

Por que o problema é no driver JDBC. Isso acontece até em host poderosos, se olhar nos logs, o que acontece é que eles reconectam toda hora. Inclusive isso acontece com um software que uso (XPlanner) analisando o log tenho o mesmo problema, a vantagem do xplanner é que ele tambem fica reconectando, por isso funciona bem.

Mesmo assim, eu faço a conexão usando ThreadLocal assim como mandam o pessoal do hibernate, e nunca esqueço de fechá-las.

Abração

Curioso...
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Então o pool está mantendo conexões inativas (ou problemáticas), dependendo do pool que você estiver usando, pode mandar ele testar se a conexão é válida antes de enviar ela pra aplicação.

Na época que eu tive o desprazer de lidar com uma aplicação na Locaweb, eu usava o driver do mysql passando o parâmetro autoreconnect=true, vê se isso resolve pra você. Um exemplo:

jdbc:mysql://hostName:3306/dbName?autoReconnect=true"

Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
kuesley
JavaBaby

Membro desde: 14/03/2005 00:16:00
Mensagens: 89
Localização: Brasilia / DF
Offline

Maurício Linhares wrote:Então o pool está mantendo conexões inativas (ou problemáticas), dependendo do pool que você estiver usando, pode mandar ele testar se a conexão é válida antes de enviar ela pra aplicação.

Na época que eu tive o desprazer de lidar com uma aplicação na Locaweb, eu usava o driver do mysql passando o parâmetro autoreconnect=true, vê se isso resolve pra você. Um exemplo:

jdbc:mysql://hostName:3306/dbName?autoReconnect=true"


Eu já desisti deles.

Vou tentar o que você falou.

Abraços

Curioso...
dezao
Smalltalk

Membro desde: 11/09/2006 17:46:47
Mensagens: 1
Offline

Olá, ainda tô aprendendo java e me deparei com o mesmo problema...

O estranho que conectando num banco remoto (com mysql 4), o código funciona certinho, mas quando vou fazer uma conexão local (com mysql 5) dá esse erro logo na conexão. Será que pode ser a versão do mysql ou alguma configuração diferente?? não tenho a mínima idéia por onde começar..
 
Índice dos Fóruns » Desenvolvimento Web
Ir para:   
Powered by JForum 2.1.8 © JForum Team