Oi. Eu tenho uma aplicação que me liga uma base de dados em MySql e tudo funciona bem. O meu problema é que quando estou a trabalhar com essa aplicação e tento alterar alguma coisa se demorar muito tempo ou se estiver muito tempo sem lhe mexer e penso que seja esse o problema a ligação vai abaixo o que deixa de me permitir continuar a fazer alterações. Como é que eu posso fazer para que a ligação não caía?? É que instalei o MySql server e quando o estou a usar isso não me acontece, só acontece com uma ligação ao exerior.
Se alguém me conseguisse ajudar agradecia.
vc tem algum pool de conexão configurado???
poste o trace do erro q esta dando…
Provavelmente o servidor está configurado para derrubar sua conexão caso você fique inativo. Nesse caso, você tem a opção de mudar a configuração do servidor, fazer uma solicitação de tempos em tempos para a conexão não cair, ou simplesmente verificar se a conexão está aberta antes de executar alguma coisa, se ela não estiver aberta, você conecta novamente.
Peço desculpa pelo atraso na resposta. Aqui está o trace:
[code]com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:
** BEGIN NESTED EXCEPTION **
java.io.EOFException
STACKTRACE:
java.io.EOFException
at com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:1913)
at com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:2304)
at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2803)
at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)
at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1665)
at com.mysql.jdbc.Connection.execSQL(Connection.java:3170)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1316)
at com.mysql.jdbc.Statement.executeUpdate(Statement.java:1235)
[/code]
Só mais uma pergunta não há nenhum metodo da classe connection tipo
reconnect() ??? Obrigado
cara…isso aih eh conexão q não esta sendo fechada…
verifica as confs do seu mySQL, aumenta tudo, num de conexões, tempo de timeout, etc…
configura seu pool tb…pra ele poder gerenciar as conexões…
outra coisa, a maquina q esta rodando esse banco esta rodando apenas o mySQL??? cuidado com o compartilhamento de maquina hein…eh recomendável deixar o banco isolado e bem protegido…
vlw
Pois. Mas depois da conexão estar fechada não se pode alterar. E se eu me estou a ligar a um servidor que não é meu como posso eu gerenciar o tal num de conexões e tempo de time out??
Obrigado.