2016-02-06 130 views
0

在MYSQL无响应的高峰时段出现性能问题。试图找出我是否使用最大连接的正确值。该服务器有64GB的RAM。找出mysql最大连接限制

+------------------------------+------------+ 
| Variable_name    | Value  | 
+------------------------------+------------+ 
| bulk_insert_buffer_size  | 8388608 | 
| innodb_buffer_pool_instances | 1   | 
| innodb_buffer_pool_size  | 134217728 | 
| innodb_change_buffering  | all  | 
| innodb_log_buffer_size  | 8388608 | 
| join_buffer_size    | 67108864 | 
| key_buffer_size    | 2147483648 | 
| myisam_sort_buffer_size  | 8388608 | 
| net_buffer_length   | 16384  | 
| preload_buffer_size   | 32768  | 
| read_buffer_size    | 67108864 | 
| read_rnd_buffer_size   | 2097152 | 
| sort_buffer_size    | 2097152 | 
| sql_buffer_result   | OFF  | 
+------------------------------+------------+ 

lsof | wc -l 
124101 

lsof -a -p MYSQLDPID | wc -l 
518 

mysql> SHOW STATUS LIKE '%connection%'; 
+----------------------+----------+ 
| Variable_name  | Value | 
+----------------------+----------+ 
| Connections   | 25019772 | 
| Max_used_connections | 451  | 
+----------------------+----------+ 

当前连接限制设置为350.需要哪些其他变量来计算正确的连接限制?

回答

0

查看STATUS Vatiables。 连接Max_used_connections会说你有多少连接服务器使用。

SHOW STATUS LIKE '%connection%'; 

Variable_name Value 
Connection_errors_accept 0 
Connection_errors_internal 0 
Connection_errors_max_connections 0 
Connection_errors_peer_address 0 
Connection_errors_select 0 
Connection_errors_tcpwrap 0 
Connections 13 
Max_used_connections 7 
+0

25019772和451分别 – Andy

+0

Max_used_connections =连接在同一时间和连接不断开的最大数目=连接尝试(成功和不成功的)的数目。因此,请显示您的服务器允许多少个连接将其设置为合适的值。你发布的价值观没有提到任何关于回应的信息。有很多提示。您正在使用哪种类型的类型以及哪些Querys正在同时运行。如果您启用了查询缓存,则可以使用它,..... –

+0

最好的办法是启用缓慢的查询日志并查看查询的EXPLAIN更改它们或创建正确的indexe等等。 –