How to optimize mysql memory? What are the key parameters?
Jun 04, 2025 pm 06:21 PMThe core of MySQL memory optimization is to rationally configure key parameters to improve performance. 1. Adjust innodb_buffer_pool_size to 50%~80% of physical memory. For example, the 32GB server can be set to 24GB, and combine multiple instances to reduce contention. 2. Control the connection memory. The thread_stack is recommended to be no less than 192KB. The sort_buffer_size is set to 1MB~2MB to avoid memory waste. 3. Configure the global memory parameters tmp_table_size and max_heap_table_size to 128M to avoid temporary table drops. 4. Continue to observe memory usage and adjust configuration through SHOW ENGINE INNODB STATUS and monitoring tools to ensure efficient and stable operation of the system.
The core of MySQL memory optimization is to reasonably configure key parameters to enable the database to run as efficiently as possible under limited memory resources. The focus is to adjust the configuration according to the server hardware, data volume and access mode to avoid memory waste or insufficient memory.
1. Adjust innodb_buffer_pool_size: the most important parameter
The InnoDB engine's buffer pool is responsible for cache table data and indexing, which is one of the most critical parameters that affect performance. It is generally recommended to set it to 50%~80% of physical memory, provided that your data volume is large enough and MySQL is the main service.
For example, if you have a 32GB memory server that specializes in MySQL, it can be set to about 24GB:
innodb_buffer_pool_size = 24G
Be careful not to set it too high, and leave memory for the operating system and other processes (such as connection threads, temporary sorting, etc.). If the setting is too large, it may cause the system to swap frequently and slow down performance.
In addition, MySQL 8.0 supports multiple buffer pool instances, innodb_buffer_pool_instances
can be used to reduce concurrent contention and improve efficiency in high concurrency scenarios.
2. Control the connection memory overhead: thread_stack and sort_buffer_size
Each client connection is allocated a thread, and each thread uses a certain amount of memory, where thread_stack
and sort-related buffers are particularly important.
The default thread_stack
is 256KB, which is enough for most cases. If you have many connections, you can adjust this value appropriately, but it is not recommended to be less than 192KB, otherwise it may cause a stack overflow error.
sort_buffer_size
used by the sort operation is exclusive to each connection, which means that if there are 100 concurrent sort requests, it will occupy 100 times the parameter size. It is recommended to set between 1MB and 2MB, as it is too large and it can easily lead to memory waste.
For example:
sort_buffer_size = 1M
Other similar ones include read_buffer_size
, join_buffer_size
, etc., which are also allocated according to the connection, so don't set it all in one go, and evaluate it in combination with the actual load.
3. Global memory-related parameters: query_cache_type and tmp_table_size
Query caches were once useful in some scenarios where there was more read and less write, but have been completely removed since MySQL 8.0. If you are still using the old version, be careful that its lock mechanism will affect performance when it is written frequently, and it is not recommended to enable it.
The memory limit of temporary tables is determined by tmp_table_size
and max_heap_table_size
. When the temporary table exceeds this limit, it will be automatically converted to disk tables, with significant performance degradation. It is usually recommended to set both to be between 64M and 256M:
tmp_table_size = 128M max_heap_table_size = 128M
This allows most small temporary tables to be processed in memory and avoid frequent drops.
4. Monitor memory usage: find problems from the status
In addition to configuration parameters, you also need to check the memory usage of MySQL regularly. You can view the current memory allocation through the following command:
SHOW ENGINE INNODB STATUS\G
Pay attention to the "Free buffers" and "Database pages" in the BUFFER POOL section. If there are too few free pages, it means that the buffer pool may not be enough.
You can also use performance_schema
or third-party tools such as Prometheus Grafana to monitor memory trends in real time to discover potential bottlenecks in a timely manner.
Basically that's it. Memory optimization is not something that can be achieved overnight. The key is to continuously observe and adjust based on the actual load, and don’t blindly copy other people’s experience values.
The above is the detailed content of How to optimize mysql memory? What are the key parameters?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Identifying the trend of the main capital can significantly improve the quality of investment decisions. Its core value lies in trend prediction, support/pressure position verification and sector rotation precursor; 1. Track the net inflow direction, trading ratio imbalance and market price order cluster through large-scale transaction data; 2. Use the on-chain giant whale address to analyze position changes, exchange inflows and position costs; 3. Capture derivative market signals such as futures open contracts, long-short position ratios and liquidated risk zones; in actual combat, trends are confirmed according to the four-step method: technical resonance, exchange flow, derivative indicators and market sentiment extreme value; the main force often adopts a three-step harvesting strategy: sweeping and manufacturing FOMO, KOL collaboratively shouting orders, and short-selling backhand shorting; novices should take risk aversion actions: when the main force's net outflow exceeds $15 million, reduce positions by 50%, and large-scale selling orders

1. Download and install the application through the official recommended channel to ensure safety; 2. Access the designated download address to complete the file acquisition; 3. Ignore the device safety reminder and complete the installation as prompts; 4. You can refer to the data of mainstream platforms such as Huobi HTX and Ouyi OK for market comparison; the APP provides real-time market tracking, professional charting tools, price warning and market information aggregation functions; when analyzing trends, long-term trend judgment, technical indicator application, trading volume changes and fundamental information; when choosing software, you should pay attention to data authority, interface friendliness and comprehensive functions to improve analysis efficiency and decision-making accuracy.

First, select well-known platforms such as Binance Binance or Ouyi OKX, and prepare your email and mobile phone number; 1. Visit the official website of the platform and click to register, enter your email or mobile phone number and set a high-strength password; 2. Submit information after agreeing to the terms of service, and complete account activation through the email or mobile phone verification code; 3. Complete identity authentication (KYC) after logging in, enable secondary verification (2FA) and check security settings regularly to ensure account security. After completing the above steps, you can successfully create a BTC digital currency account.

In the digital currency market, real-time mastering of Bitcoin prices and transaction in-depth information is a must-have skill for every investor. Viewing accurate K-line charts and depth charts can help judge the power of buying and selling, capture market changes, and improve the scientific nature of investment decisions.

1. First, ensure that the device network is stable and has sufficient storage space; 2. Download it through the official download address [adid]fbd7939d674997cdb4692d34de8633c4[/adid]; 3. Complete the installation according to the device prompts, and the official channel is safe and reliable; 4. After the installation is completed, you can experience professional trading services comparable to HTX and Ouyi platforms; the new version 5.0.5 feature highlights include: 1. Optimize the user interface, and the operation is more intuitive and convenient; 2. Improve transaction performance and reduce delays and slippages; 3. Enhance security protection and adopt advanced encryption technology; 4. Add a variety of new technical analysis chart tools; pay attention to: 1. Properly keep the account password to avoid logging in on public devices; 2.

Binance provides bank transfers, credit cards, P2P and other methods to purchase USDT, USDC and other stablecoins, with fiat currency entrance and high security; 2. Ouyi OKX supports credit cards, bank cards and third-party payment to purchase stablecoins, and provides OTC and P2P transaction services; 3. Sesame Open Gate.io can purchase stablecoins through fiat currency channels and P2P transactions, supporting multiple fiat currency recharges and convenient operation; 4. Huobi provides fiat currency trading area and P2P market to purchase stablecoins, with strict risk control and high-quality customer service; 5. KuCoin supports credit cards and bank transfers to purchase stablecoins, with diverse P2P transactions and friendly interfaces; 6. Kraken supports ACH, SEPA and other bank transfer methods to purchase stablecoins, with high security

First, choose a reputable digital asset platform. 1. Recommend mainstream platforms such as Binance, Ouyi, Huobi, Damen Exchange; 2. Visit the official website and click "Register", use your email or mobile phone number and set a high-strength password; 3. Complete email or mobile phone verification code verification; 4. After logging in, perform identity verification (KYC), submit identity proof documents and complete facial recognition; 5. Enable two-factor identity verification (2FA), set an independent fund password, and regularly check the login record to ensure the security of the account, and finally successfully open and manage the USDT virtual currency account.

First, choose a reputable trading platform such as Binance, Ouyi, Huobi or Damen Exchange; 1. Register an account and set a strong password; 2. Complete identity verification (KYC) and submit real documents; 3. Select the appropriate merchant to purchase USDT and complete payment through C2C transactions; 4. Enable two-factor identity verification, set a capital password and regularly check account activities to ensure security. The entire process needs to be operated on the official platform to prevent phishing, and finally complete the purchase and security management of USDT.
