当前位置:网站首页>MySQL ERROR 1040: Too many connections
MySQL ERROR 1040: Too many connections
2022-07-06 10:02:00 【Learn from Tao Ge】
As the title , This chapter mainly talks about when the server appears ERROR 1040: Too many connections Some experience in dealing with mistakes .
max_connections see
## See the maximum number of connections
SHOW VARIABLES LIKE "max_connections";
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 512 |
+-----------------+-------+
## View the maximum number of connections used
SHOW VARIABLES LIKE 'Max_used_connections';
show global status like 'Max_used_connections';
+----------------------+-------+
| Variable_name | Value |
+----------------------+-------+
| Max_used_connections | 499 |
+----------------------+-------+
Treatment scheme
There are generally two solutions to this problem , The solution is very easy , We just need to add max_connections The number of connections is enough .
Add to the current session mysql maximum connection
## modify
max_connections = 1000
above mysql The connection value is temporarily increased to 1000, But only for the current session . Once we restart mysql Service or restart the system , The value will be reset to the default value .
Permanently increase mysql maximum connection
In order to permanently increase mysql The number of connections , We need editors mysql The configuration file , namely /etc/my.cnf
.
sudo vim /etc/my.cnf
How much expansion is appropriate ?Max_connextions
It's not the bigger the better , So how to configure ?
Mode one
For improving MySQL Concurrent , A lot depends on memory , The official provided a report on innodb Of memory Calculation method :
innodb_buffer_pool_size
+ key_buffer_size
+ max_connections * (sort_buffer_size + read_buffer_size + binlog_cache_size)
+ max_connections * 2MB
Mode two
Installation scale expansion :
max_used_connections / max_connections * 100% = [85, 90]%
Maximum number of connections used / maximum connection
Reached 80%~90% Section , Optimize or expand the proposed capacity .
Expand
Here are also several common effects MySQL Performance conditions :
Threads
SHOW STATUS LIKE 'Threads%';
+-------------------+--------+
| Variable_name | Value |
+-------------------+--------+
| Threads_cached | 1 |
| Threads_connected | 217 |
| Threads_created | 29 |
| Threads_running | 88 |
+-------------------+--------+
SHOW VARIABLES LIKE 'thread_cache_size';
+-------------------+-------+
| Variable_name | Value |
+-------------------+-------+
| thread_cache_size | 10 |
+-------------------+-------+
- Threads_cached The number of threads in the cache
- Threads_connected The current number of open connections
- Threads_created Number of threads created to handle connections .
- Threads_running Number of threads not sleeping
If Threads_created Big , You may have to add thread_cache_size value . The cache miss ratio can be calculated as Threads_created / Connections
Check the table lock
SHOW GLOBAL STATUS LIKE 'table_locks%';
+-----------------------+-------+
| Variable_name | Value |
+-----------------------+-------+
| Table_locks_immediate | 90 |
| Table_locks_waited | 0 |
+-----------------------+-------+
- Table_locks_immediate The number of times a table lock request was immediately obtained
- Table_locks_waited The number of times a request for a table lock could not be obtained immediately , Need to wait . If this value is too high, there may be a performance problem , And affect the release of connections
The slow query
show variables like '%slow%';
+---------------------------+----------------------------------------------+
| Variable_name | Value |
+---------------------------+----------------------------------------------+
| slow_launch_time | 2 |
| slow_query_log | On |
+---------------------------+----------------------------------------------+
Thread details
## View the details of each thread
SHOW PROCESSLIST;
+--------+----------+------------------+--------------+---------+-------+-------------+------------------+
| Id | User | Host | db | Command | Time | State | Info |
+--------+----------+------------------+--------------+---------+-------+-------------+------------------+
| 3 | xxxadmin | localhost | NULL | Sleep | 1 | cleaning up | NULL |
| 4 | xxxadmin | localhost | NULL | Sleep | 0 | cleaning up | NULL |
| 5 | xxxadmin | localhost | NULL | Sleep | 6 | cleaning up | NULL |
+--------+----------+------------------+--------------+---------+-------+-------------+------------------+
summary
Of course , The above is just a general solution , Either way , Both need to be expanded in combination with actual business scenarios .
in addition , For production environment , Set the appropriate alarm threshold , It's also necessary .
Last , In programming , Because of the use of MySQL Statement calls the database to execute SQL, Will assign a thread operation MySQL, So at the end of the call , Need to recycle connection , Avoid leakage .
Reference resources
边栏推荐
- Control the operation of the test module through the panel in canoe (primary)
- Programmation défensive en langage C dans le développement intégré
- Keep these four requirements in mind when learning single chip microcomputer with zero foundation and avoid detours
- Defensive C language programming in embedded development
- flask运维脚本(长时间运行)
- docker MySQL解决时区问题
- [untitled]
- Several silly built-in functions about relative path / absolute path operation in CAPL script
- 15 医疗挂号系统_【预约挂号】
- Target detection -- yolov2 paper intensive reading
猜你喜欢
[deep learning] semantic segmentation: thesis reading (neurips 2021) maskformer: per pixel classification is not all you need
[one click] it only takes 30s to build a blog with one click - QT graphical tool
14 medical registration system_ [Alibaba cloud OSS, user authentication and patient]
大学C语言入门到底怎么学才可以走捷径
西南大学:胡航-关于学习行为和学习效果分析
单片机实现模块化编程:思维+实例+系统教程(实用程度令人发指)
The programming ranking list came out in February. Is the result as you expected?
How can I take a shortcut to learn C language in college
CANoe下载地址以及CAN Demo 16的下载与激活,并附录所有CANoe软件版本
再有人问你数据库缓存一致性的问题,直接把这篇文章发给他
随机推荐
If a university wants to choose to study automation, what books can it read in advance?
South China Technology stack cnn+bilstm+attention
Some thoughts on the study of 51 single chip microcomputer
The 32 year old programmer left and was admitted by pinduoduo and foreign enterprises. After drying out his annual salary, he sighed: it's hard to choose
Contest3145 - the 37th game of 2021 freshman individual training match_ C: Tour guide
CAPL 脚本对.ini 配置文件的高阶操作
Cmooc Internet + education
Several silly built-in functions about relative path / absolute path operation in CAPL script
零基础学习单片机切记这四点要求,少走弯路
cmooc互联网+教育
Zsh configuration file
再有人问你数据库缓存一致性的问题,直接把这篇文章发给他
嵌入式开发中的防御性C语言编程
Preliminary introduction to C miscellaneous lecture document
Some thoughts on the study of 51 single chip microcomputer
Download address of canoe, download and activation of can demo 16, and appendix of all canoe software versions
vscode 常用的指令
Canoe cannot automatically identify serial port number? Then encapsulate a DLL so that it must work
C杂讲 文件 初讲
Teach you how to write the first MCU program hand in hand