首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL连接太多

问MySQL连接太多
EN

Server Fault用户
提问于 2010-06-18 01:21:55
回答 3查看 10.7K关注 0票数 2

我的服务器上有7个数据库。我们的服务器有512 MB的RAM,我今晚要升级到2GB,并且有一个2.4单处理器。

我得到了一个关于连接极限超过的错误。随着内存的增加,增加连接的数量可以吗?目前,它被设置为200,但是一个页面可能连接到3-4数据库,考虑到连接和其他事情。

我们已经为组织建立了这么多的数据库。我们在所有的数据库中总共有250-300个表。

如有任何建议,将不胜感激:

更新

结果,我的关系比我想象的要多.

在2GB内存和2.4单核的情况下,50个用户连接准确吗?还是应该增加?

代码语言:javascript
复制
[mysqld]
safe-show-database

skip-locking
safe-show-database

interactive_timeout=30
wait_timeout=30
connect_timeout=10
max_user_connections=50
max_connections=1000

key_buffer=64M
join_buffer=2M
record_buffer=2M
sort_buffer=4M
max_allowed_packet=24M

query_cache_limit = 2M
query_cache_size = 64M
query_cache_type = 1

tmp_table_size=128M
table_cache=2048
thread_cache=256
thread_concurrency=1
EN

回答 3

Server Fault用户

回答已采纳

发布于 2010-06-18 13:32:24

你应该能够大大增加你的联系。但是,如果不正确地调优每个线程的内存使用情况,则可能导致MySQL内存不足。MySQL内存不足可能是一种灾难性的情况,最好避免。

当您没有正确地调优时会发生什么的例子:

由于内存不足,MySQL继续重新启动

我先前提出的一些优化建议:

如何在Mysql中设置my.cnf以使连接不受限制?

指向InnoDB内存使用的链接包括一个计算InnoDB内存使用量的公式,您可以将该公式插入电子表格中,以计算每个线程的内存使用情况。

以下是有关MySQL服务器内存使用的更多信息。

最终,您的目标应该是根据您的配置计算每个线程的最大内存使用量。计算完后,可以将最大连接设置为适当的值。

票数 2
EN

Server Fault用户

发布于 2010-06-18 01:27:11

在1gb的机器上,我们常规地将max_connections设置为750,没有问题。

票数 0
EN

Server Fault用户

发布于 2011-04-14 18:02:19

如果使用PHP,则编辑php配置文件,通常位于/etc/php.ini,并将持久性更改为OFF。

MySQL;允许或阻止持久链接。mysql.allow_persistent = Off

就这样。重启阿帕奇。

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

https://serverfault.com/questions/152333

复制
相关文章

相似问题

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