安装MySQL后,可以通过以下多方面优化来提升数据库性能:
# 在my.cnf或my.ini中调整以下参数
[mysqld]
# 缓冲池大小(通常设为可用内存的50-70%)
innodb_buffer_pool_size = 4G
# 日志文件大小
innodb_log_file_size = 256M
# 允许的最大连接数
max_connections = 200
# 查询缓存(MySQL 8.0+已移除)
# query_cache_size = 64M
# 临时表大小
tmp_table_size = 64M
max_heap_table_size = 64M
# 排序缓冲区
sort_buffer_size = 4M
join_buffer_size = 4M
innodb_flush_log_at_trx_commit = 1 # 1为最安全,2为性能折衷
innodb_flush_method = O_DIRECT
innodb_read_io_threads = 8
innodb_write_io_threads = 8
innodb_io_capacity = 2000
innodb_io_capacity_max = 4000
EXPLAIN
分析查询执行计划SELECT *
,只查询需要的列OPTIMIZE TABLE
(对InnoDB效果有限)启用慢查询日志:
slow_query_log = 1
slow_query_log_file = /var/log/mysql/mysql-slow.log
long_query_time = 2
定期分析表:
ANALYZE TABLE table_name;
使用性能监控工具:
优化是一个持续的过程,应根据实际负载情况不断调整测试。建议先在测试环境验证配置更改,再应用到生产环境。