美文网首页
my.cnf部分参数详解

my.cnf部分参数详解

作者: Hz37 | 来源:发表于2018-03-13 17:11 被阅读15次

    [mysqld]

    连接相关:

    wait_timeout = 1800                                                       

    interactive_timeout=1800            

    这两个参数都是表示连接最大空闲时长,区别:interactive_timeout针对交互式连接(客户端),wait_timeout针对非交互式连接(程序)。

    connect_timeout:重连超时时间

    back_log =500:MySQL暂时停止回答新请求之前(MySql的连接数达到max_connections时)的短时间内多少个请求可以被存在堆栈中

    max_connections:服务器最大并发连接数

    max_user_connections:每个数据库用户的最大连接,注意是以用户+主机为单位

    I/O相关:

    innodb_flush_log_at_trx_commit=1:redo刷盘策略

    sync_binlog=1:binlog刷盘策略

    如果要求数据不能丢失,那么两个都设为1。如果允许丢失一点数据,则可分别设为2和10。而如果完全不用care数据是否丢失的话(例如在slave上,反正大不了重做一次),则可都设为0。这三种设置值导致数据库的性能受到影响程度分别是:高、中、低,也就是第一个会另数据库最慢,最后一个则相反;

    per_thread_buffer相关(每个连接的用户进程分配的内存):

    read_buffer_size:用于表的顺序扫描,比如全表扫描时读取的数据块会暂存在这里,写满后返回给调用者。一般配置128-256K

    read_rnd_buffer_size:用于表的随机读取,比如按非索引字段排序时,会用到这个缓冲区暂存读取的数据。一般在128-256K

    sort_buffer_size:无索引排序操作缓存,128-256K

    thread_stack:每个线程的堆栈大小,256K

    join_buffer_size:关联字段无索引会用到using_join_buffer,256K

    binlog_cache_size:无大事务,写入不频繁,设置为2M左右,否则可适当增加

    global_buffer相关:

    innodb_buffer_pool_size:innodb核心内存参数,一般设置为系统内存60%-80%

    innodb_log_buffer_size:innodb写redo时,为了提高性能,先将信息写入该缓存,根据innodb_flush_log_at_trx_commit策略刷入磁盘,一般设置16-64M

    key_buffer_size:缓存MyISAM存储引擎的索引参数,就算innodb引擎,内部磁盘临时表是myisam,64M

    相关文章

      网友评论

          本文标题:my.cnf部分参数详解

          本文链接:https://www.haomeiwen.com/subject/ywezfftx.html