
掌握 MySQL 配置文件对优化 MySQL 数据库性能有非常大的意义,所以我们需要掌握MySQL配置文件。
MySQL配置文件位置
1.Windows系统位置
在Windows系统中,MySQL的配置文件为my.ini。
my.ini文件,该文件在C:\ProgramData\MySQL\MySQL Server 8.0目录下。
如图:

2.Linux系统位置
在Linux系统中配置文件为my.cnf,一般存放路径为:
/etc/my.cnf
或者:
/etc/mysql/my.cnf
MySQL配置文件参数
以下为Mysql配置文件常用参数详解:
1.服务器配置
| datadir=/data/mysql | 数据目录 | 
| socket=/var/lib/mysql/mysql.sock | 通信设置 | 
| user=mysql | 使用MySQL用户启动 | 
| symbolic-links=0 | 是否支持快捷方式 | 
| log-bin=mysql-bin | 开启bin-log日志 | 
| server-id=1 | MySQL服务的ID | 
| auto_increment_offset=1 | 自增长字段从固定数开始 | 
| auto_increment_increment=2 | 自增长字段每次递增的量 | 
| socket=/tmp/mysql.sock | MySQL客户程序与服务器之间的本地通信套接字文件 | 
| port=3306 | 制定MySQL监听端口 | 
| key_buffer=384MB | key_buffer是用于索引块的缓冲区大小 | 
| table_cache=512 | 为所有线程打开表的数量 | 
| sort_buffer_size=2MB | 为每个需要进行排序的线程分配该大小的一个缓冲区 | 
| read_buffer_size=2MB | 读查询操作所能使用的缓冲区大小 | 
| query_cache_size=32MB | 制定MySQL查询结果缓冲区的大小 | 
| read_rnd_buffer_size=8MB | 该参数在使用行指针排序之后,随机读 | 
| myisam_sort_buffer_size=64MB | MyISAM表发生变化时重新排序所需的缓冲 | 
| thread_concurrency=8 | 最大并发线程数,取值为服务器逻辑CPU数量*2 | 
| thread_cache=8 | 缓存可重用的线程数 | 
| skip-locking | 避免MySQL的外部锁定 | 
| default-storage-engine | 设置MySQL默认引擎为InnoDB | 
| #mysqld_safe config | MySQL服务安全配置 | 
2.MySQL服务安全启动配置
| og-error=/var/log/mysqld.log | MySQL错误日志路径 | 
| pid-file=/var/run/mysqld/mysqld.pid | MySQL PID进程文件 | 
| key_buffer_size=2048MB | MyISAM表索引缓冲的大小 | 
| max_connections=3000 | MySQL最大连接数 | 
| innodb_buffer_pool_size=2048MB | InnoDB内存缓冲数据和索引大小 | 
| basedir=/usr/local/mysql55/ | 数据库安装路径 | 
3.数据库导出段配置
| max_allowed_packet=16MB | 服务器和客户端发送的最大数据包 | 
关于mikechen
mikechen睿哥,10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。