文章目录
注明
#以下选项会被MySQL客户端应用读取。注意只有MySQL附带的客户端应用程序保证可以读取这段内容。如果你想你自己的MySQL应用程序获取这些值。需要在MySQL客户端库初始化的时候指定这些选项。
[client]
port = 3309
socket = /usr/local/mysql/tmp/mysql.sock
[mysqld] #服务器端配置
!include /usr/local/mysql/etc/mysqld.cnf #包含的配置文件,可以把用户名和密码文件单独存放
port = 3306 #监听端口
bind-address = 0.0.0.0 #监听的ip地址
server-id = 1 #MySQL服务的ID
socket = /usr/local/mysql/tmp/mysql.sock #socket通信设置
pid-file = /usr/local/mysql/var/mysql.pid #pid文件路径
basedir = /usr/local/mysql/ #MySQL程序路径
datadir = /usr/local/mysql/data #数据目录
tmpdir = /usr/local/mysql/tmp/
此目录被 MySQL用来保存临时文件.例如,它被用来处理基于磁盘的大型排序,和内部排序一样,以及简单的临时表.如果你不创建非常大的临时文件,将其放置到 swapfs/tmpfs 文件系统上也许比较好。另一种选择是你也可以将其放置在独立的磁盘上.你可以使用”;”来放置多个路径,他们会按照 roud-robin 方法被轮询使用.
slave-load-tmpdir = /usr/local/mysql/tmp/ #当slave执行load data infile时使用
*** skip options 相关选项 ***
skip-name-resolve
#禁止 MySQL 对外部连接进行 DNS 解析,使用这一选项可以消除 MySQL 进行 DNS 解析的时间。但需要注意,如果开启该选项,则所有远程主机连接授权都要使用 IP 地址方式,否则 MySQL 将无法正常处理连接请求!
skip-symbolic-links
#不能使用连接文件,多个客户可能会访问同一个数据库,因此这防止外部客户锁定 MySQL 服务器。 该选项默认开启
skip-external-locking
#不使用系统锁定,要使用 myisamchk,必须关闭服务器 ,避免 MySQL的外部锁定,减少出错几率增强稳定性。
skip-slave-start
#启动 mysql,不启动复制
skip-networking
#开启该选项可以彻底关闭 MySQL 的 TCP/IP 连接方式,如果 WEB 服务器是以远程连接的方式访问 MySQL 数据库服务器则不要开启该选项!否则将无法正常连接! 如果所有的进程都是在同一台服务器连接到本地的 mysqld, 这样设置将是增强安全的方法
sysdate-is-now = 1
#把SYSDATE 函数编程为 NOW的别名
*** 系统资源相关选项 ***
back_log = 50
#接受队列,对于没建立 tcp 连接的请求队列放入缓存中,队列大小为 back_log,受限制与 OS 参数,试图设定 back_log 高于你的操作系统的限制将是无效的。默认值为 50。对于 Linux 系统推荐设置为小于512的整数。如果系统在一个短时间内有很多连接,则需要增大该参数的值
max_connections = 1000
#指定MySQL允许的最大连接进程数。如果在访问数据库时经常出现"Too Many Connections"的错误提 示,则需要增大该参数值。
max_connect_errors = 10000
#如果某个用户发起的连接 error 超过该数值,则该用户的下次连接将被阻塞,直到管理员执行 flush hosts ; 命令或者服务重启, 防止黑客 , 非法的密码以及其他在链接时的错误会增加此值
open_files_limit = 10240
#MySQL打开的文件描述符限制,默认最小1024;当open_files_limit没有被配置的时候,比较max_connections5和ulimit-n的值,哪个大用哪个,当open_file_limit被配置的时候,比较open_files_limit和max_connections5的值,哪个大用哪个。
connect-timeout = 10
#连接超时之前的最大秒数,在 Linux 平台上,该超时也用作等待服务器首次回应的时间
wait 相关
wait-timeout = 28800
#等待关闭连接的时间
interactive-timeout = 28800
#关闭连接之前,允许 interactive_timeout(取代了wait_timeout)秒的不活动时间。客户端的会话 wait_timeout 变量被设为会话interactive_timeout 变量的值。如果前端程序采用短连接,建议缩短这2个值, 如果前端程序采用长连接,可直接注释掉这两个选项,默认配置(8小时)
slave 相关
slave-net-timeout = 600
#从服务器也能够处理网络连接中断。但是,只有从服务器超过slave_net_timeout 秒没有从主服务器收到数据才通知网络中断
net 相关
net_read_timeout = 30
#从服务器读取信息的超时
net_write_timeout = 60
#从服务器写入信息的超时
net_retry_count = 10
#如果某个通信端口的读操作中断了,在放弃前重试多次
net_buffer_length = 16384
#包消息缓冲区初始化为 net_buffer_length 字节,但需要时可以增长到
max 相关
max_allowed_packet 字节
max_allowed_packet = 64M
#服务所能处理的请求包的最大大小以及服务所能处理的最大的请求大小(当与大的BLOB 字段一起工作时相当必要), 每个连接独立的大小.大小动态增加。 设置最大包,限制server接受的数据包大小,避免超长SQL的执行有问题 默认值为16M,当MySQL客户端或mysqld
服务器收到大于 max_allowed_packet 字节的信息包时,