MySql稳定性问题排查

MySql的最大连接数限制

MySql有最大连接数限制,默认为151。当MySql的连接数超出最大连接数限制时,再有新的线程要连接MySql就会出现连接拒绝的情况。实测一般情况下MySql连接数最多为20,以目前的业务量基本不可能触及151的最大连接限制。

当然,MySql的最大连接数限制是可以配置的,但调高最大连接数限制会增加服务器内存消耗和CPU负载。尽管实际可能并没有用到那么多连接,但MySql会为没有使用的连接预留一定的内存和CPU,因此不建议无故调高最大连接数限制。

通过MySql客户端查看连接数

如下图所示,Threads Connected是当前连接数,Connection Limit是最大连接数。


不稳定因素排查

当MySql出现不稳定的情况时,应该首先查看MySql日志。实践中影响MySql稳定性的因素主要是服务器内存不足。生产环境下MySql出现崩溃或连接拒绝的情况时,通常都是发生在服务器内存超过90%的情况下。 当服务器连接拒绝时,首先应通过“sudo systemctl status mysql”命令确认MySql的运行状态,其次是查看当前连接数是否已达到最大连接数限制。


举报

© 著作权归作者所有


0