sql >> Databasteknik >  >> RDS >> Mysql

mysql respekterar inte wait_timeout-inställningen i my.cnf

Det visar sig att problemet ligger i mysql2 pärla. Den gör det här riktigt häftiga ...

I huvudsak ersätter den ett eget standardvärde för wait_timeout på cirka 25 dagar (2147483s) som wait_timeout-värdet (förmodligen sessionsversionen av wait_timeout) som anslutningen använder, vilket i princip åsidosätter vilken inställning vi än anger på servern.

Genom att ställa in ett wait_timeout:värde i config/database.yml fungerar timeouten som den ska. När anslutningen avbryts får du dock "mysql server has gone away"-fel.

Genom att ange en medföljande återanslut:sant alternativet i database.yml, varje gång anslutningen återanvänds återställs anslutningens timer, MEN efter det använder den GLOBAL wait_timeout-inställningen från mysql direkt

Hoppas detta hjälper någon



  1. RTRIM() Funktion i Oracle

  2. PDO flera namngivna platshållare hämtar inte data

  3. Laravel-migrering:unik nyckel är för lång, även om angiven

  4. Hur man ytterligare optimerar denna MySQL-tabell för en enda fråga