首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Mysql“内存使用量”的增加和增加

Mysql“内存使用量”的增加和增加
EN

Stack Overflow用户
提问于 2016-09-20 14:34:36
回答 1查看 5.7K关注 0票数 3

我有一个非常大的网站,它是用PHP和MYSQL建立起来的。

在我的网站上,在不同的PHP页面上,我有超过1000个不同的查询,很难将它们全部更新到MYSQLI。

我用4GB内存购买了VPS服务器,在过去的几个月里,我经历了非常缓慢的页面加载。

当我重新启动服务器时,一切都运行得很顺利,但是几个小时/天之后,网站的速度越来越慢,因为加载页面的时间是3+秒。我注意到mysqld服务的内存使用量正在增加,从服务器重新启动的80 of增加到大约400 of甚至更多。

我将index.php mysql_close()放在末尾,但是连接数似乎还在增加。

,什么会导致mysql内存使用量的无限增加?将我的所有查询更新到MYSQLI可以提高性能吗?

一些资料:

代码语言:javascript
复制
innodb_version
5.5.31
protocol_version
10
slave_type_conversions
version
5.5.31-log
version_comment
MySQL Community Server (GPL)
version_compile_machine
x86_64
version_compile_os
Linux

存储引擎:混合(有些表是INNODB,有些表是MyISAM。my.cnf:

代码语言:javascript
复制
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
max-connections=100000
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
thread_cache_size=5
table_open_cache=99390
sort_buffer_size=512M
read_rnd_buffer_size=512M
query_cache_size=512M
query_cache_limit = 16M
query_cache_type = 1
slow_query_log=1 
slow_query_log_file=slow_query_log.log # 
long_query_time=5
log-queries-not-using-indexes=1


[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

当我使用show processlist时,大约有6-7个查询在运行。

EN

回答 1

Stack Overflow用户

发布于 2016-09-23 03:52:17

max-connections=100000 --好极了!降至1000

table_open_cache=99390 --下降到,比方说,2000年

sort_buffer_size=512M --下降到内存的1%,比如说,4000万。

read_rnd_buffer_size=512M --同上

query_cache_size=512M --太大了;减慢速度;降到40米

long_query_time=5

log-queries-not-using-indexes=1 --在没有提供太多信息的情况下对慢速日志进行混乱;更改为0。

你没有说你用的是哪个引擎。有关MyISAM和InnoDB的建议,请阅读MyISAM。

1000页--还不算太多。

哪个网络服务器?如果是Apache,请不要将MaxClients设置为20以上。

2022 postscriptquery_cache_sizequery_cache_type变量是从mySQL 8.0.3+中删除

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39596932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档