innodb_buffer_pool_size),使用SSD替代HDD以提升I/O性能。noatime),调整内核参数(vm.swappiness=1减少swap使用)。innodb_buffer_pool_size:设为物理内存的50%-70%,缓存数据和索引。innodb_log_file_size:设置为256MB-1GB,减少日志切换频率。max_connections:根据负载设置(建议500-1000),避免连接耗尽内存。query_cache_size:仅在MySQL 5.7及以下版本使用(8.0已弃用),设为64MB-128MB。innodb_flush_log_at_trx_commit=2:提升写入性能(牺牲部分ACID,适合非金融场景)。skip-name-resolve:禁用DNS解析,加速连接。SELECT *,只查询必要列。EXPLAIN分析执行计划,优化全表扫描、JOIN操作。LIMIT限制结果集,避免大表分页性能问题。SHOW STATUS LIKE 'Handler_read%'判断索引使用效率。OPTIMIZE TABLE整理碎片,或使用pt-online-schema-change在线优化。slow_query_log=1),用mysqldumpslow或pt-query-digest分析慢查询。net.ipv4.tcp_tw_reuse=1),优化TCP连接复用。注意:每次修改配置后需重启MySQL服务,生产环境务必先在测试环境验证。
参考来源: