MySQL进阶之配置文件说明

概述不同版本的配置文件参数及使用方法略略有不同,具体可参考官网版主文档 。如果选项名称配置错误,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行锁导致的死锁等待时间