sql >> Databasteknik >  >> RDS >> Mysql

Basicdatasource-anslutningsproblem med timeout (med mysql)

Saker du kan prova:

  1. setMaxWait(-1) på BasicDataSource. Det säger att den ska vänta på en anslutning på obestämd tid.

  2. Kontrollera att wait_timeout på din MySQL-server är inställd på standard 8h.

  3. Ställ in ?autoReconnect=true på din JDBC URL

  4. setTestOnBorrow(true) på BasicDataSource. Detta kommer att förhindra att den delar ut inaktuella anslutningar men kommer att lägga till overhead till din app (men om du redan har så långa enstaka frågor kommer du förmodligen inte ens att märka den delen).

Generellt sett tycker jag att det är en dålig idé att fortsätta återanvända en anslutning. För mig är poängen med att ha en pool att jag inte behöver göra det.

Är dina frågor transaktionella? Är det någon riktigt lång fråga som låser en större tabell?




  1. Ingen form av databascache för att minska dubbletter av databasfrågor.

  2. Runtime Warning i django

  3. datumformat i node.JS

  4. GROUP BY i Postgres - ingen likhet för JSON-datatyp?