解決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服務生效,且需為系統和應用預留足夠內存,避免影響其他服務。