Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

A conexão com o MySql está sendo abortada automaticamente. Como configurar o Connector/J corretamente?


O texto descreve três soluções para evitar abortos de conexão:

  1. Configure a string de conexão com autoReconnect=true . Esta é uma propriedade da cadeia de conexão da URL, que funciona no nível do driver. Você precisa alterar a cadeia de conexão na configuração da fonte de dados.
    url="jdbc:mysql://localhost:3306/confluence?autoReconnect=true"
    

  2. Aumente o tempo limite. Isso normalmente é uma propriedade do banco de dados. Você pode aumentar esse valor para ver se obtém menos interrupções de conexão.

  3. Configure o pool de conexões para testar a validade da conexão. Isso é feito no pool, não no nível do driver. Isso dependerá da implementação da fonte de dados que você usa. Mas deve ser configurável na propriedade da fonte de dados, se você usar um pool, por exemplo. c3p0 .

Comentários adicionais:
  • A fonte de dados/pool também pode ter um tempo limite, que corresponde ao tempo que uma conexão ociosa permanece no pool. Para não confundir com o tempo limite do banco de dados.
  • Existem várias maneiras de testar a validade de uma conexão. Uma maneira comum é ter uma tabela de teste fictícia. O pool emitirá um select na tabela de teste fictícia para ver se a conexão ainda está OK.