MySQL使用Laravel 5.4时连接错误太多

时间:2018-05-22 17:59:15

标签: mysql database laravel mariadb

我在共享主机(documentation)上运行了一个Laravel 5.4网络应用程序,并且每次都会出现# Sample data. This data will have Date in `Jan-1971` format. # Data has been created only for 36 months. set.seed(1) df <- data.frame( Date = format(seq(as.Date("1971-01-01"), as.Date("1973-12-31"), by="month"), "%b-%Y"), VOI = as.integer(runif(36)*100), stringsAsFactors = FALSE) library(zoo) library(xts) #Convert Date column to type `yearmon` ts = xts(x = df$VOI, order.by = as.yearmon(df$Date, "%b-%Y")) head(ts) # [,1] # Jan 1971 26 # Feb 1971 37 # Mar 1971 57 # Apr 1971 90 # May 1971 20 # Jun 1971 89 错误。有时需要几分钟才能重新开始工作,有时需要几个小时。

我已经尝试了几种方法来诊断问题并尝试修复它,但到目前为止还没有任何工作。

SQLSTATE[08004][1040] Too many connections设置为500,max_connections设置为8小时。

如果我在错误仍然弹出的情况下登录mysql cli并列出活动进程,则显示不超过10~15个进程。

此外,该系统仅供大约30人使用,因此我不知道为什么可以达到最大连接数(可能是因为某种原因php没有关闭某些连接?)。

有没有人遇到这样的错误?如果是这样你做了什么修复它? 还有什么可能导致错误以及如何预防/修复它的想法?

我可以提供有关我的laravel app,db和server的更多信息,如果它可以帮助诊断问题。

1 个答案:

答案 0 :(得分:1)

可能的原因:

  • &#34;连接池&#34;打开(某处),设置得太高。
  • 网络服务器有太多的孩子&#39 ;;降低其限制。
  • 可能会“慢”。需要优化的查询。
  • 连接未能断开&#39;完成后。
  • 减少而不是增加,wait_timeout
  • 有多个wait_timeout设置;你改错了。
  • 增加同时连接的数量会使整体性能变差。