美文网首页
MySQL常用参数设置

MySQL常用参数设置

作者: 10xjzheng | 来源:发表于2020-05-18 14:47 被阅读0次
    • max_connections
      MySQL能创建的最大连接数,如果数据库的并发量比较大,建议调高此值,以增加并行连接数量,当然连接数越多,由于MySQL会为每个连接创建连接缓冲区,连接数越多会消耗更多内存
    • open_files_limit
      MySQL打开的文件描述符限制,默认最小1024
    • key_buffer_size
      key_buffer_size指定索引缓冲区的大小,它决定索引处理的速度,尤其是索引读的速度。
    • query_cache_size
      使用查询缓冲,MySQL将查询结果存放在缓冲区中,今后对于同样的SELECT语句(区分大小写),将直接从缓冲区中读取结果。
    • wait_timeout
      指定一个请求的最大连接时间,对于4GB左右内存的服务器可以设置为5-10。
    • sync_binlog
      二进制日志文件binlog的刷新写入方式,这个参数不仅影响到Binlog日志对MySQL所带来的性能损耗,而且还影响到MySQL中数据的完整性。参数设置说明如下:
    1. sync_binlog=0,
      当事务提交之后,MySQL不做fsync之类的磁盘同步指令刷新binlog_cache中的信息到磁盘,而让文件系统自行决定什么时候来做同步,或者cache满了之后才同步到磁盘。如果没刷新到磁盘前系统宕机,则会丢失最后的binlog内容,但是此参数性能最佳
    2. sync_binlog=n,
      当每进行n次事务提交之后,MySQL将进行一次fsync之类的磁盘同步指令来将binlog_cache中的数据强制写入磁盘。
    • innodb_flush_logs_at_trx_commit
      InnoDB引擎事务日志文件的刷新写入方式,这个参数对InnoDB引擎的写入性能来说非常重要,有以下3种设置:
    1. =1时,在每个事务提交时,日志缓冲被写到日志文件,对日志文件做到磁盘操作的刷新。最安全的方式,但是速度最慢。
    2. =2时,在每个事务提交时,日志缓冲被写到文件,但不对日志文件做到磁盘操作的刷新。只有操作系统崩溃或掉电才会删除最后一秒的事务,不然不会丢失事务。
    3. =0时, 日志缓冲每秒一次地被写到日志文件,并且对日志文件做到磁盘操作的刷新。任何mysqld进程的崩溃会删除崩溃前最后一秒的事务
    • innodb_buffer_pool_size
      这是Innodb最重要的一个配置参数,这个参数控制Innodb本身的缓存大小,也影响到,多少数据能在缓存中。建议该参数的配置在物理内存的70%-80%之间。
    • innodb_log_file_size
      在高写入负载尤其是数据集很大的时候,这个值非常重要,值越高性能越好,不过可能会增加数据恢复的时候。
    • tmp_table_size
      控制内存临时表的最大值,超过限值后就往硬盘写。
    • innodb_temp_data_file_path = ibtmp1:12M:autoextend:max:5G
      临时表超过限制会写入到磁盘,ibtmp1是非压缩的innodb临时表的独立表空间,通过innodb_temp_data_file_path参数指定文件的路径,文件名和大小,默认配置为ibtmp1:12M:autoextend,也就是说在支持大文件的系统这个文件大小是可以无限增长的。以上配置:12M代表文件初始大小,5G代表最大size。
    • max_heap_table_size
      用户可以创建的内存表(memory table)的大小.这个值用来计算内存表的最大行数值。

    相关文章

      网友评论

          本文标题:MySQL常用参数设置

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