Mysql 将wait_timout设置为30,静止睡眠连接以恒定速率增加

Mysql 将wait_timout设置为30,静止睡眠连接以恒定速率增加,mysql,amazon-ec2,connection-pooling,bitnami,Mysql,Amazon Ec2,Connection Pooling,Bitnami,[已解决] 看来PHP MYADMIN变量起了作用。 我将等待超时设置为30,并将等待超时锁定为50 花了将近6个小时回到稳定状态,包括几次重新启动,可能是读取这些更改所需的时间 问题: 网址 2秒内在主页322上的查询数 慢速查询日志文件中没有任何内容 我正在使用BITNAMI LAMP服务器[amazon ec2]运行我基于wordpress的重型站点 问题是,我的服务器每10分钟就会崩溃一次 我猜是因为这个原因, 当我使用putty检查processlist时,它似乎以非常高的速率不断增加

[已解决]

看来PHP MYADMIN变量起了作用。 我将等待超时设置为30,并将等待超时锁定为50 花了将近6个小时回到稳定状态,包括几次重新启动,可能是读取这些更改所需的时间

问题:

网址

2秒内在主页322上的查询数

慢速查询日志文件中没有任何内容

我正在使用BITNAMI LAMP服务器[amazon ec2]运行我基于wordpress的重型站点

问题是,我的服务器每10分钟就会崩溃一次

我猜是因为这个原因, 当我使用putty检查processlist时,它似乎以非常高的速率不断增加,所有这些都指定了sleep命令

我尝试设置如下变量:

wait_timeout=30
interactive_timeout=30
connect_timeout=15
max_user_connections=25
max_connections=999
但这似乎没有任何帮助

链接到PHPMYADMIN监视器的图片,用于单页加载[主页]:

以下是我从PHPMYADMIN状态中获得的信息:

Questions since startup: 50,617 Documentation
ø per hour: 138,361
ø per minute: 2,306
ø per second: 38

Statements  #   ø per hour  %
select  46,128  126.1 k 91.13
set option  2,452   6,702.5 4.84
change db   1,226   3,351.3 2.42
update  516 1,410.5 1.02
insert  135 369 0.27
delete  116 317.1   0.23
show binlogs    13  35.5    0.03
show variables  5   13.7    0.01
show processlist    5   13.7    0.01
show master status  4   10.9    0.01
show slave status   4   10.9    0.01
show databases  4   10.9    0.01
show tables 3   8.2 0.01
show status 3   8.2 0.01
show grants 1   2.7  <0.01
kill    1   2.7  <0.01
show table status   1   2.7  <0.01
select
set option
change db
update
insert
delete
show binlogs
Other
91%5%
我签出了我的页面查询,它在2秒内显示了328个查询


如何真正停止这些连接?

我想先看看这些查询是什么。你为什么有那么多。如果它们都是重复查询,它们在每个连接上都被调用,我会考虑缓存。你可以安装一个插件来缓存你的数据库查询。您还可以使用W3TotalCache缓存前端。 Memcached是一个键值存储,它将查询结果存储在内存中。因此,您的数据库不会每次都在相同的查询中获得命中率。
另外,如果您使用innodb作为存储引擎,请将innodb_buffer_pool_大小更改为RAM的60%

虽然我几乎无法访问您的站点,但对于常见的wordpress安装,查询与页面的比率似乎非常高。我最好的猜测是,您有太多的插件,而这些插件又在每个页面加载时运行太多的自定义查询

您需要确定这些查询的来源,并找到一种方法将它们卸载到缓存机制(如memcache)中。有一些缓存插件,比如W3TC,可以为您提供这样的功能,但是在定制查询的情况下,它可能不会太有效

您说您正在bitnami lamp配置上运行,因此您的mysql与您的Web服务器在同一台机器上运行。您是否考虑过运行单独的mysql服务器,例如AmazonRDS?这并不是一个神奇的解决方案,但它可以让您更好地诊断瓶颈,同时阻止您篡改mysql配置,这是一个难得的方法


你在用什么域名?我发现,使用免费dns服务确实为静态文件提供了一个基本的缓存层,所以当用户点击frontpage时,可能会收到html的静态副本。您必须配置cloudflare以执行攻击性html缓存。但正如我所说,它是免费的,而且很有帮助。

是的,它又崩溃了,这就是你无法打开它的原因。很奇怪,但当我启用wp super cache时,我的整个站点变成了一个空白页。在复制时,我可以看到主复制此服务器在复制过程中没有配置为主服务器。您想配置它吗?从属复制此服务器在复制过程中未配置为从属。你想配置它吗?你能帮我检查一下,哪一个查询没有运行,哪一个查询速度慢吗?我使用的是ssh客户端putty。最简单的方法是安装phpmyadmin并查看它们的监控部分和慢速查询日志你好,我更新了一些东西,有图片。我的锁等待超时是31536000。这和等待超时有什么不同吗?你能得到一个查询日志吗?我有一个很慢的查询,就是这样。我可以知道如何获得执行时间和睡眠连接的完整查询集。比如这些连接来自哪里