如何限制MySQL分叉的进程数量? 我注意到在启动时至less有10个孩子。 这是一个不在生产中的开发数据库; 所以没有用户连接到它。
您可以尝试通过更改以下值来减less进程/线程的数量:
MAX_USER_CONNECTIONS
MAX_CONNECTIONS
max_delayed_threads
例如在my.cnf中:
max_connections = 1 max_user_connections = 1 max_delayed_threads = 1
但是这并不能保证会有更less的进程/线程,因为并不是所有的进程/线程都是连接相关的。
使用max_user_connections来限制单个mysql用户一次可以拥有的连接数
http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_max_user_connections
您需要尝试一些不同的max_connections和max_user_connections的设置/组合,以获得最佳性能而不会耗尽连接。
连接和线程之间的比例也不是1:1。
什么@ b13n1u说。 如果这不起作用,任何程序都可能受到标准限制的限制。 这个问题作为一个相关的例子。
为了限制Linux中的mysqld进程,在启动mysqld之前设置例如“ ulimit -u 5 ”,也许把它添加到mysql init脚本中。