MySQL配置文件路径与参数设置指南

1. 配置文件路径
Linux/Unix
默认路径:/etc/my.cnf 或 /etc/mysql/my.cnf
用户自定义路径:~/.my.cnf(当前用户生效)
优先级:后加载的配置会覆盖前面的设置。
Windows
默认路径:C:\ProgramData\MySQL\MySQL Server X.Y\my.ini
或安装目录下的 my.ini
2. 配置文件结构
配置文件由 [section] 区块组成,常见区块:
[mysqld]:MySQL 服务端核心配置(最常用)
[client]:客户端工具(如 mysql 命令行)的默认配置
[mysql]:mysql 客户端的专属配置
[mysqldump]:备份工具配置
示例:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
port=3306
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
[client]
default-character-set=utf8mb4
3. 常见配置项([mysqld] 区块)
基础配置
port=3306 # 监听端口
datadir=/var/lib/mysql # 数据存储目录
socket=/tmp/mysql.sock # 套接字文件路径
性能优化
max_connections=200 # 最大连接数
innodb_buffer_pool_size=2G # InnoDB 缓冲池大小(建议为物理内存的 50-70%)
key_buffer_size=512M # MyISAM 索引缓存(若使用 MyISAM 表)
日志与安全
log_error=/var/log/mysql/error.log # 错误日志路径
slow_query_log=1 # 启用慢查询日志
long_query_time=2 # 慢查询阈值(秒)
bind-address=0.0.0.0 # 允许远程访问(默认 127.0.0.1 仅本地)
字符集
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
4. 检查配置是否生效
查看当前配置:
SHOW VARIABLES LIKE 'max_connections'; -- 检查具体参数
重启 MySQL 服务(配置修改后需重启):
# Linux
systemctl restart mysqld # 或 service mysql restart
# Windows
通过“服务”管理工具重启 MySQL 服务
5. 注意事项
修改配置文件前备份原文件。
使用 # 或 ; 注释不需要的配置。
配置项需写在正确的 [section] 下(如 [mysqld] 或 [client])。
权限问题:确保 MySQL 用户有权限读取配置文件和相关目录。
6. 配置文件示例
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
port=3306
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
max_connections=200
innodb_buffer_pool_size=2G
[client]
default-character-set=utf8mb4