码迷,mamicode.com
首页 > 数据库 > 详细

MySQL 5.6 my.cnf 模版

时间:2016-02-29 19:42:30      阅读:1678      评论:0      收藏:0      [点我收藏+]

标签:


[client] port
= 3306 socket = /var/run/mysqld/mysqld.sock [mysqld_safe] thp-setting=never socket = /var/run/mysqld/mysqld.sock nice = 0 [mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp local-infile = 0 lc-messages-dir = /usr/share/mysql skip-external-locking skip-name-resolve #bind-address = 127.0.0.1 #对timestamp新的行为控制参数,相关文章 explicit_defaults_for_timestamp = 1 character-set-server = utf8mb4 default-storage-engine=INNODB ##thread相关参数:Thread_pool_size X Thread_pool_oversubscribe = MySQL内部同时支持运行的最大任务数,相关文章 #MySQL线程调度方式, thread_handling = pool-of-threads #根据系统的CPU创建出thread_pool_size(该参数不建议调整)threadpool中group数量,默认为cpu核心数,server启动时自动计算 #thread_pool_size = auto #每个thread_pool_size里同时可以运行多少个任务,超过限制后,继续创建worker线程会被延迟 thread_pool_oversubscribe = 20 #timer线程检测间隔,单位为毫秒,用于防止thread pool里的线程死掉.Thread pool里线程如果超过thread_pool_stall_limit声明的时间没响应降会重新创建 thread_pool_stall_limit = 50 #用于声明extra_port最大允许的连接,extra_port 去监听一个和服务端口不一样的端口,用于Thread pool被占满或是被锁着的情况下用于管理使用. extra_max_connection = 5 #线程池的优先级:transactions:使用优先队列和普通队列,对于事务已经开启的statement,放到优先队列中,否则放到普通队列中。statements:只使用优先队列 ;none: 只是用普通队列,本质上和statements相同,都是只是用一个队列 thread_pool_high_prio_mode = transactions #当开启了优先队列模式后,每个连接最多允许thread_pool_high_prio_tickets次被放到优先队列中,之后放到普通队列中 thread_pool_high_prio_tickets=4294967295 #线程最大空闲时间,单位为秒,超过限制后会退出,默认60 thread_pool_idle_timeout=60 #threadpool中最大线程数目,线程总数超过该限制后不能继续创建更多线程 thread_pool_max_threads = 100000 #FullText #MyISAM ft_min_word_len = 1 ft_max_word_len = 84 #InnoDB innodb_ft_min_token_size= 1 innodb_ft_max_token_size=84 #MyISAM 停止词存放在文件 ft_stopword_file = /var/lib/mysql/stopword.txt #InnoDB,停止词存放在表 innodb_ft_server_stopword_table = dba_test/ft_stopwords innodb_ft_user_stopword_table = dba_test/ft_stopwords #控制在创建临时表时使用的存储引擎,默认为innodb default_tmp_storage_engine = innodb #线上可以开启 innodb_undo_directory = /var/lib/mysql/undolog/ innodb_undo_tablespaces = 8 innodb_undo_logs = 128 #用于优化in(),以确认是否直接使用索引统计,相关文章 eq_range_index_dive_limit = 200 #back_log = 500 thread_stack = 192K max_allowed_packet = 32M max_connections = 600 max_connect_errors = 2000 max_heap_table_size = 256M max_length_for_sort_data= 2048 tmp_table_size = 256M read_buffer_size = 512K read_rnd_buffer_size = 1M sort_buffer_size = 512K join_buffer_size = 256K table_open_cache = 1024 #对table cache进行划分,减少table cache的锁竞争,累死innodb_buffer_poll_instances table_open_cache_instances = 8 thread_cache_size = 64 # * Query Cache Configuration #query_cache_type = 0 #query_cache_size = 0M #query_cache_limit = 1M open_files_limit = 5000 # * Logging and Replication log_error = /var/log/mysql/error_3306.log #开启慢查询日志,相关文章1文章2 slow_query_log = 1 slow_query_log_file = /var/log/mysql/mysql-slow.log long_query_time = 0.5 #log-queries-not-using-indexes #general_log = 1 #慢查询过滤器,用于Percona,相关文章 #log_slow_filter = string #可用值session or query log_slow_rate_type = session #记录每个session/query的日志,如果log_slow_rate_type为session,将不记录replication thread的日志 log_slow_rate_limit = 1 #语句执行存储过程(不包括触发器)慢将记录到慢查询日志 log_slow_sp_statements = 1 #指定慢查询日志包含多少信息,相关文章 #log_slow_verbosity = ‘‘ #每个慢查询记录时间戳 #slow_query_log_timestamp_always #精度为second或microsecond slow_query_log_timestamp_precision=second #该变量控制最大slow文件数量,设置slow_query_log_file为没有.log后缀的文件 #max_slowlog_files #超过该值,slow日志将自动旋转,生成slow_query_log_file.000001这样的文件 #max_slowlog_size log_bin = mysql-bin-3306.log binlog_cache_size = 1M max_binlog_size = 1024M binlog_format = MIXED #binlog_format = ROW #binlog_row_image = minimal sync_binlog = 1000 expire_logs_days = 5 #binlog_checksum = NONE server-id = 10 relay_log = mysqld-relay-bin # * TokuDB tokudb_cache_size = 512M tokudb_commit_sync = 0 tokudb_fsync_log_period = 1000 tokudb_data_dir = /var/lib/mysql/tokudb_data tokudb_log_dir = /var/lib/mysql/tokudb_log tokudb_tmp_dir = /tmp # * MyISAM key_buffer_size = 128M bulk_insert_buffer_size = 8M concurrent_insert = 2 #myisam-recover = BACKUP myisam_recover_options = BACKUP # * InnoDB #打印死锁到errorlog innodb_print_all_deadlocks = 1 #预热 innodb_buffer_pool_dump_now = 1 innodb_buffer_pool_load_now = 1 innodb_buffer_pool_dump_at_shutdown = 1 innodb_buffer_pool_load_at_startup = 1 #预热文件 innodb_buffer_pool_filename = ib_buffer_pool innodb_page_size = 16K #innodb_page_size = 4K #ssd #innodb_flush_neighbors = 0 #ssd innodb_flush_neighbors = 0 #影响page cleaner 线程一次扫描LRU/UNZIP_LRU的深度,默认为1024,IO能力强的可以适当调大。 innodb_io_capacity/innodb_buffer_pool_instances innodb_lru_scan_depth =2000 innodb_strict_mode = 1 innodb_buffer_pool_size = 10000M innodb_buffer_pool_instances = 3 innodb_change_buffering = all innodb_change_buffer_max_size = 20 innodb_autoextend_increment = 64 innodb_additional_mem_pool_size = 15M innodb_file_per_table = 1 innodb_flush_log_at_trx_commit = 2 innodb_flush_log_at_timeout = 3 innodb_log_buffer_size = 8M innodb_log_file_size = 256M innodb_log_files_in_group = 2 innodb_max_dirty_pages_pct = 60 innodb_read_io_threads = 8 innodb_write_io_threads = 8 #innodb_io_capacity = 800 innodb_io_capacity = 2000 #ssd #innodb_io_capacity_max = 2000 innodb_adaptive_flushing = 1 innodb_adaptive_flushing_lwm = 15 innodb_old_blocks_pct = 20 innodb_old_blocks_time = 1000 #online ddl时并发DML产生的row log最大size,超过这个限制会导致DDL回滚 innodb_online_alter_log_max_size = 128M innodb_flush_neighbors = 1 innodb_concurrency_tickets = 5000 innodb_optimize_fulltext_only = 0 innodb_use_native_aio = 1 innodb_use_sys_malloc = 1 innodb_thread_concurrency = 0#回收undo线程 innodb_purge_threads= 4 #5.7 #innodb_page_cleaners = 4 innodb_purge_batch_size = 300 #创建索引做merge-sort时,一个归并block的大小 innodb_sort_buffer_size = 16M innodb_change_buffering = all #changebuffer占用bp的最大比例 innodb_change_buffer_max_size = 20 innodb_file_format = barracuda innodb_file_format_check = 1 innodb_file_format_max = barracuda innodb_stats_on_metadata = 0 innodb_open_files = 3000 #Percona支持ALL_O_DIRECT innodb_flush_method = ALL_O_DIRECT #innodb_flush_method = O_DIRECT_NO_FSYNC lock_wait_timeout = 50 transaction-isolation = READ-COMMITTED # * replication replicate-ignore-db = test replicate-ignore-db = mysql #binlog_do_db = include_database_name skip-slave-start = 1 log_slave_updates = 1 #gtid-mode=on # GTID only #enforce-gtid-consistency=true # GTID only master_info_repository = table relay_log_info_repository = table # * slave #并行复制线程数 slave_parallel_workers = 4 #多线程复制需要关闭 slave_transaction_retries = 0 #在并发复制时总共执行这么多次事务后做一次checkpoint,更新show slave status的数据 slave_checkpoint_group = 512 #在复制执行这么长时间后做一次checkpoint slave_checkpoint_period = 300 #在多线程复制时,在队列中Pending的事件所占用的最大内存,默认为16M,如果内存富余,或者延迟较大时,可以适当调大;注意这个值要比主库的max_allowed_packet大 slave_pending_jobs_size_max = 32M #备库SQL线程是否检查binlog的checksum slave_sql_verify_checksum = 1 #部分解决无主键表导致的复制延迟问题,相关文章 #slave_rows_search_algorithms = TABLE_SCAN,INDEX_SCAN,HASH_SCAN #slave_net_timeout = 300 relay_log_recovery = 1 #sync_relay_log = 0 #sync_relay_log_info = 0 #sync_master_info = 0 # ssl-ca=/etc/mysql/cacert.pem # ssl-cert=/etc/mysql/server-cert.pem # ssl-key=/etc/mysql/server-key.pem [mysqldump] quick quote-names max_allowed_packet = 16M [mysql] #no-auto-rehash # faster start of mysql but no tab completition [isamchk] key_buffer = 16M # # * IMPORTANT: Additional settings that can override those from this file! # The files must end with .cnf, otherwise theyll be ignored. #
!includedir /etc/mysql/conf.d/

该文章后续会不断更新,慢慢完善。之前也介绍了MySQL5.5的配置文件,现在按照前2篇文章1文章2的信息,整理出该博文。对MySQL5.6的my.cnf 进行了配置(Percona MySQL),因为根据服务器硬件资源来调整的,所以一些内存、io刷写的大小比例可以根据自己的条件来设置。

相关文章:

http://mysqllover.com/?p=575

http://dev.mysql.com/doc/refman/5.6/en/innodb-parameters.html

https://www.percona.com/doc/percona-server/5.6/ps-versions-comparison.html

https://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html

 

MySQL 5.6 my.cnf 模版

标签:

原文地址:http://www.cnblogs.com/zhoujinyi/p/5227462.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!