解决Debian系统上MariaDB内存不足问题,可从以下方面入手:
innodb_buffer_pool_size
:设置为物理内存的50%-80%(InnoDB核心缓存,优先保证)。key_buffer_size
:若使用MyISAM表,适当增加(通常8-64M),InnoDB可忽略。max_connections
限制并发连接,避免内存耗尽。query_cache_size
(MySQL 8.0+已弃用,MariaDB可谨慎配置)。top
、htop
、vmstat
等工具实时查看内存占用,定位瓶颈。EXPLAIN
分析慢查询,避免SELECT *
,用LIMIT
限制返回数据量。OPTIMIZE TABLE
清理碎片,更新统计信息。vm.swappiness=0
,避免内存不足时频繁交换。注意:修改配置后需重启MariaDB服务生效,且需为系统和应用预留足够内存,避免影响其他服务。