Mysql
 sql >> Baza danych >  >> RDS >> Mysql

ActiveRecord::ConnectionTimeoutError:nie można uzyskać połączenia z bazą danych w ciągu 5000 sekund (czekano 5000 sekund)

Miałem te same problemy, które powodowało zbyt wiele otwartych połączeń z bazą danych. Może się to zdarzyć, gdy masz zapytania do bazy danych poza kontrolerem (w modelu, programie pocztowym, generatorze pdf, ...).

Mogę to naprawić, umieszczając te zapytania w tym bloku, który automatycznie zamyka połączenie.

ActiveRecord::Base.connection_pool.with_connection do
  # your code
end

Ponieważ Puma działa wielowątkowo, rozmiar puli (jak wspomniał eabraham) również może być ograniczeniem. Spróbuj ją (trochę) zwiększyć...

Mam nadzieję, że to pomoże!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. BŁĄD 1356 (HY000):Widok 'mysql.user' odwołuje się do nieprawidłowych tabel lub kolumn lub funkcji lub definiującego/wywołującego widok nie ma uprawnień do ich używania

  2. Jak sprawdzić stan harmonogramu zdarzeń mysql

  3. Wiele COUNT() dla wielu warunków w jednym zapytaniu (MySQL)

  4. Jakie są różnice w korzystaniu z bazy danych XML i MySQL? Którego powinienem użyć?

  5. Zapytanie MySQL, aby uzyskać nazwy kolumn?