概述
不同版本的配置文件参数及使用方法略略有不同,具体可参考官网版主文档。如果选项名称配置错误,MySQL有可能不能启动。MySQL的配置文件一般为my.cny,不同版本或不同操作系统可能存放位置不一样。以下是MySQL配置文件常用选项(mysqld选项段)。
常用配置项说明
- bind-address
MySQL实例启动后绑定的IP,默认是127.0.0.1或localhost
- port
MySQL实例启动后监听的端口,默认是3306
- socket
本地socket方式登录MySQL时socket文件路径
- datadir
MySQL数据库相关的数据文件主目录,一般是/var/lib/mysql/
- tmpdir
MySQL保存临时文件的路径
- skip-external-locking
跳过外部锁定
- back-log
在MySQL的连接请求等待队列中允许存放的最大连接数
- character-set-server
MySQL服务器端默认字符集,默认值的latin1
- key_buffer_size
索引缓冲区,决定了myisam数据库索引处理的速度
- max_connections
MySQL允许的最大连接数
- max_connect_errors
客户端连接指定次数后,服务器将屏蔽该主机的连接
- table_cache
设置表高速缓存的数量
- max_allowed_packet
网络传输中,一次消息传输量的最大值
- binlog_cache_size
在事务过程中容纳二进制日志SQL语句的缓存大小
- sort_buffer_size
用来完成排序操作的线程使用的缓冲区大小
- join_buffer_size
将为两个表之间的每个完全连接分配连接缓冲区
- thread_cache_size
线程缓冲区所能容纳的最大线程个数
- thread_concurrency
限制了一次有多少线程能进入内核
- query_cache_size
为缓存查询结果分配的内存的数量
- query_cache_limit
如查询结果超过此参数设置的大小则不进行缓存
- ft_min_word_len
加入索引的词的最小长度
- thread_stack
每个连接创建时分配的内存
- transaction_isolation
MySQL数据库事务隔离级别
- tmp_table_size
临时表的最大大小
- net_buffer_length
服务器和客户之间通信使用的缓冲区长度
- read_buffer_size
对数据表做顺序读取时分配的MySQL读取缓冲区大小
- read_rnd_buffer_size
MySQL随机读缓冲区大小
- max_heap_table_size
HEAP表允许的最大值
- default-storage-engine
MySQL创建时默认的数据库引擎,默认是InnoDB
- log-bin
MySQL二进制文件的binlog的路径和文件名
- server-id
主从同步时标识唯一的MySQL实例
- slow_query_log
是否开启慢查询,为1表示开启
- long_query_time
查询时间超过此值,则认为时慢查询语句,查询语句将记录到慢查询日志中
- log-queries-not-using-indexes
若SQL语句没有使用索引,则将SQL语句记录到慢查询日志中
- expire-logs-days
MySQL二进制文件binlog保留的最长时间
- replicate_wild_ignore_table
MySQL主从同步时忽略的表
- replicate_wild_do_table
与replicate_wild_ignore_table相反,指定MySQL主从同步时需要同步的表
- innodb_data_home_dir
InnoDB数据文件的目录
- innodb_file_per_table
启用独立表空间
- innodb_data_file_path
InnoDB数据文件位置
- innodb_log_group_home_dir
用来存放InnoDB日志文件的目录路径
- innodb_additional_mem_pool_size
InnoDB存储的数据目录信息和其它内部数据结构的内存池大小
- innodb_buffer_pool_size
InnoDB存储引擎的表数据和索引数据的最大内存缓冲区大小
- innodb_file_io_threads
IO操作的最大线程个数
- innodb_thread_concurrency
InnoDB并发线程数
- innodb_flush_log_at_trx_commit
InnoDB日志提交方式
- innodb_log_buffer_size
InnoDB日志缓冲区大小
- innodb_log_file_size
InnoDB日志文件大小
- innodb_log_files_in_group
InnoDB日志个数
- innodb_max_dirty_pages_pct
当内存中的脏页量达到此参数设定的值(相对于innodb_buffer_pool大小的比例)时,刷新脏页到磁盘
- innodb_lock_wait_timeout
InnoDB行锁导致的死锁等待时间
- slave_compressed_protocol
主从同步时是否采用压缩传输binlog
- skip-name-resolve
跳过域名解析