美文网首页
4芯1核4线程32G mysql5.6 配置文件参考

4芯1核4线程32G mysql5.6 配置文件参考

作者: 一把君子剑 | 来源:发表于2018-11-16 11:53 被阅读13次

    配置仅供参考,如有问题请指出,更优配置允许的话可贴出来做参考,3Q

    # For advice on how to change settings please see
    # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
    # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
    # *** default location during install, and will be replaced if you
    # *** upgrade to a newer version of MySQL.
    
    # mysql 5.6.39 
    # linux CentOS release 6.9 (Final)
    # cpu 4
    # cpu cores 1
    # processor 4
    # menory 32G
    
    
    # For advice on how to change settings please see
    # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
    # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
    # *** default location during install, and will be replaced if you
    # *** upgrade to a newer version of MySQL.
    
    [mysqld]
    #basic
    port = 3306
    datadir=/data/mysql
    socket=/data/mysql/mysql.sock
    character-set-server=utf8
    log-error       = /data/logs/mysql/error.log
    #slowquery
    long_query_time = 1
    # 开始慢查询
    slow-query-log = 1
    slow-query-log  = /data/logs/mysql/slow_queries.log
    slow_query_log_file = /data/logs/mysql/slow_queries.log
    
    #master
    # 开启二进制日志功能
    log-bin=mysql-bin
    server-id=1
    binlog-ignore-db=information_schema
    binlog-ignore-db=performance_schema
    binlog-ignore-db=mysql
    binlog_format = MIXED
    
    #common
    # 队列连接保持数,若出现‘connection refused’报错,可提升该值
    back_log = 512
    
    # 最大连接数上限
    max_connections = 8192
    
    # 每个客户端最大错误允许数量,超过该值服务可能会重启,密码错误也累计
    max_connect_errors = 1280000
    
    # 每个进程可打开的文件数量
    open_files_limit = 8192
    
    # 每个连接独立的大小,大小动态增加
    max_allowed_packet = 16M
    
    # 超时等待时间
    wait_timeout = 31536000
    
    # 连接超时时间
    connect_timeout = 30
    
    interactive_timeout = 31536000
    event_scheduler = ON
    slow_launch_time = 2
    sql_mode =
    skip-name-resolve
    external-locking = FALSE
    
    #INNODB
    #InnoDB使用一个缓冲池来保存索引和原始数据,单独的数据库服务可以设置到内存的80%
    innodb_buffer_pool_size = 20G
    
    # 附加的内存池被 InnoDB 用来保存 metadata 信息(5.6中不再推荐使用)
    # innodb_additional_mem_pool_size = 100M
    
    # 用来缓冲日志数据的缓冲区的大小, 快满时写入磁盘
    innodb_log_buffer_size = 20M
    
    # 每个日志文件的大小,越大恢复进程时间越长
    innodb_log_file_size = 128M
    
    # 日志组中的文件总数,一般 2 ~ 3
    innodb_log_files_in_group = 3
    
    # 刷新事务日志的频率, 0 约每秒刷新到磁盘, 1 每次提交刷新到磁盘 , 2 每次提交写入日志, 每秒后才刷新的磁盘
    innodb_flush_log_at_trx_commit = 0
    
    # 用来同步IO操作的IO线程的数量
    innodb_file_io_threads = 4
    
    # 在 InnoDb 核心内的允许线程数量,过高可能会导致线程互斥
    innodb_thread_concurrency = 4
    
    # 是否需要将所有表的数据和索引存放在共享表空间
    innodb_file_per_table = 0
    
    # 在被回滚前,一个 InnoDB 的事务应该等待一个锁被批准多久, 该值对解决死锁有帮助
    innodb_lock_wait_timeout = 120
    
    #myisam
    # 重建索引时所允许的最大临时文件的大小,如果文件大小比此值更大,索引会通过键值缓冲创建(更慢)
    myisam_max_sort_file_size = 100G
    
    # 此缓冲当 MySQL 需要在 REPAIR, OPTIMIZE, ALTER 以及 LOAD DATA INFILE 到一个空表中引起重建索引时被分配.
    # 这在每个线程中被分配.所以在设置大值时需要小心.
    myisam_sort_buffer_size=128M
    
    # 自动检查和修复没有适当关闭的 MyISAM 表.
    myisam_recover
    
    # 多个 CPU 以及大内存情况设置为 1
    # myisam_repair_threads = 1
    
    #query
    query_alloc_block_size = 8192
    
    # 最大缓冲数,只有小于该值的查询才会进去缓冲
    query_cache_limit = 4M
    
    # 查询缓冲大小
    query_cache_size = 128M
    
    query_cache_min_res_unit= 2k
    query_cache_type = 0
    query_cache_wlock_invalidate = OFF
    query_prealloc_size = 8192
    
    #thread
    # cache 保存重用线程数
    thread_cache_size = 64
    
    # 线程使用的堆大小. 此容量的内存在每次连接时被预留
    thread_stack = 512k
    
    # 同一时间给予渴望被运行的线程的数量.
    # 一般设置为 线程数的两倍, 即: 物理CPU数 * 单CPU核数 * 单核线程数 * 2
    thread_concurrency = 32
    
    #table
    table_definition_cache = 512
    
    #所有线程打开表的数量
    table_open_cache = 2000
    
    # 内存单个临时表的最大大小
    tmp_table_size = 256M
    
    #独立的内存表所允许的最大容量,防止创建的表太大而耗尽内存
    max_heap_table_size = 256M
    
    max_tmp_tables = 512
    
    #buffer
    # 关键词缓冲的大小,一般用来缓冲 MyISAM 表的索引块,不要大于可能内存的30%
    key_buffer_size = 2048M
    
    # 排序缓冲被用来处理类似 ORDER BY 以及 GROUP BY 队列所引起的排序
    sort_buffer_size = 32M
    
    # 用来做 MyISAM 表全表扫描的缓冲大小.
    read_buffer_size = 32M
    
    # 用于联合。类似的联合在极大多数情况下有非常糟糕的性能表现,但是将此值设大能够减轻性能影响.
    join_buffer_size = 32M
    
    # 增大该值可能优化突发插入,不要大于 key_buffer_size
    bulk_insert_buffer_size = 64M
    
    # 增大该值,可以提高很多 ORDER BY 的性能
    #read_rnd_buffer_size = 64M
    
    [client]
    socket=/data/mysql/mysql.sock
    default-character-set=utf8
    
    [mysqldump]
    quick
    max_allowed_packet = 48M
    
    [isamchk]
    key_buffer = 128M
    sort_buffer_size = 128M
    read_buffer = 2M
    write_buffer = 2M
    
    [myisamchk]
    key_buffer = 128M
    sort_buffer_size = 128M
    read_buffer = 2M
    write_buffer = 2M
    

    相关文章

      网友评论

          本文标题:4芯1核4线程32G mysql5.6 配置文件参考

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