show variables like '%max_connections%'; 查看最大连接数 set global max_connections=1000 重新设置最大连接数 set-variable=max_user_connections=30 这个就是单用户的连接数 set-variable=max_connections=800 这个是全局的限制连接数 ------------------------------------------------------------------------------------------------------------ 以root帐号登录,查询所有用户的当前连接 show full processlist; show status like 'Threads%'; +-------------------+-------+ | Threads_cached | 58 | | Threads_connected | 57 | ###这个数值指的是打开的连接数 | Threads_created | 3676 | | Threads_running | 4 | ###这个数值指的是激活的连接数,这个数值一般远低于connected数值 +-------------------+-------+ MySQL服务器的线程数需要在一个合理的范围之内,这样才能保证MySQL服务器健康平稳地运行。Threads_created表示创建过的线程数,通过查看Threads_created就可以查看MySQL服务器的进程状态。 1. mysql> show global status like 'Thread%'; 2. +-------------------+-------+ 3. | Variable_name | Value | 4. +-------------------+-------+ 5. | Threads_cached | 46 | 6. | Threads_connected | 2 | 7. | Threads_created | 570 | 8. | Threads_running | 1 | 9. +-------------------+-------+ 如果我们在MySQL服务器配置文件中设置了thread_cache_size,当客户端断开之后,服务器处理此客户的线程将会缓存起来以响应下一个客户而不是销毁(前提是缓存数未达上限)。 Threads_created表示创建过的线程数,如果发现Threads_created值过大的话,表明MySQL服务器一直在创建线程,这也是比较耗资源,可以适当增加配置文件中thread_cache_size值,查询服务器 thread_cache_size配置: 1. mysql> show variables like 'thread_cache_size'; 2. +-------------------+-------+ 3. | Variable_name | Value | 4. +-------------------+-------+ 5. | thread_cache_size | 64 | 6. +-------------------+-------+