我应该为MySQL设置什么max_connection?

Dee*_*epu 5 mysql connection

我在Linux Centos上使用MySQL 5.1.35数据库.

Linux服务器有2GB RAM,14GB磁盘空间.

我使用Java中的Restlet框架创建了webservices ,它具有数千个用户访问权限.

我想为最大并发连接设置max_connection.

所以请建议我max_connection应该设置什么?

提前致谢.

Ome*_*esh 12

您需要计算MySQL引擎所需的内存.请参阅此处的手册

如果您使用的是MYISAM表,则可以使用以下公式计算内存需求:

key_buffer_size + (read_buffer_size + sort_buffer_size) * max_connections = K bytes of memory 
Run Code Online (Sandbox Code Playgroud)

理想情况下,在您的情况下,这不应超过2 GB.

配置参数取决于应用程序和查询的类型,但标准值可能是:

key_buffer_size = 1024MB + (read_buffer_size = 1MB + sort_buffer_size = 4MB) * 200 ~= 2GB
Run Code Online (Sandbox Code Playgroud)

key_buffer_size是全局变量,read_buffer_size and sort_buffer_size而是会话级参数.


col*_*lan 5

这取决于您拥有的内存量以及其他设置的配置方式。您可以使用一个MySQL计算器