Debian系统下MySQL内存配置需结合服务器物理内存和使用场景调整,核心参数建议如下:
- innodb_buffer_pool_size:设置为系统总内存的50%-80%(如16GB内存设为8-12GB),用于缓存数据和索引,提升查询性能。
- key_buffer_size:若使用MyISAM表,设为256MB-512MB;纯InnoDB环境可设为16MB-64MB。
- tmp_table_size 和 max_heap_table_size:建议设为64MB-256MB,控制内存临时表大小,避免频繁写入磁盘。
- sort_buffer_size 和 join_buffer_size:通常设为2MB-8MB,优化排序和JOIN操作。
- max_connections:根据并发需求调整(如100-500),避免内存耗尽,高并发场景建议配合连接池使用。
注意事项:
- 配置后需重启MySQL服务生效。
- 使用
SHOW STATUS或performance_schema监控内存使用,避免过度配置导致系统交换(swap)。
- 生产环境建议逐步调整并测试,优先保证稳定性。