内容简介:以下List是我们常见的MySQL参数配置,这个参数对提高实例的性能大有裨益。其中 建议设置值,仅供参考,需要根据自己的业务场景和硬件资源仔细推敲。
以下List是我们常见的 MySQL 参数配置,这个参数对提高实例的性能大有裨益。
其中 建议设置值,仅供参考,需要根据自己的业务场景和硬件资源仔细推敲。
参数 | 设置说明 | 建议设置值 |
lower_case_table_names |
大小写敏感:此参数不可以动态修改,必须重启数据库: 0.表名存储为给定的大小和比较是区分大小写的 1.表名存储在磁盘是小写的,但是比较的时候是不区分大小写 2.表名存储为给定的大小写但是比较的时候是小写的 |
0 |
max_connections | 最大链接数据 | 2000 |
max_connect_errors | 某一客户端链接失败的情况下尝试连接MySQL服务器最大尝试次数 | 100 |
sort_buffer_size |
排序缓冲增加sort_buffer_size值可以加速ORDER BY或GROUP BY操作 想要加快ORDER BY的速度,首先看是否可以让MySQL使用索引而不是额外的 排序 阶段 |
8388608 |
join_buffer_size |
联合查询缓冲此缓冲被使用来优化全联接(FULL JOINS 不带索引的联接), 类似的联接在极大多数情况下有非常糟糕的性能表现,但是将此值设大能够减轻性能影响。如果全局大小比使用它的大多数查询都大,那么内存分配时就会导致性能下降 |
8388608 |
tmp_table_size | 规定了内部内存临时表的最大值,每个线程都要分配。这两个参数是mysql对临时表的大小控制,tmp_table_size 控制内存临时表的最大值,超过限值后就往硬盘写,写的位置由变量 tmpdir 决定;max_heap_table_size 用户可以创建的内存表(memory table)的大小.这个值用来计算内存表的最大行数值。 | 67108864 |
max_heap_table_size | 67108864 | |
innodb_buffer_pool_size | innodb缓冲池,用来缓存InnoDB索引页面、Undo页面以及一些其它辅助数据。 | 一般为物理内存的75%-85% |
innodb_buffer_pool_instances | 将InnoDB缓冲池划分为多个实例适当地增加该参数,可以提升InnoDB的并发性能。通过这个参数,把原来一整块Buffer Pool分割为多块内存空间,每个空间独立管理自己的空闲链表、刷新链表、LRU及其它数据结构。 | |
innodb_buffer_pool_dump_pct | InnoDB缓存池预热恢复buffer pool中百分比数据 | 40 |
innodb_flush_log_at_trx_commit |
0:log buffer每秒一次写入log file,并且log file的flush(刷到磁盘)操作同时进行。该模式下在事务提交的时候,不会主动触发写入磁盘的操作。 1:每次事务提交时MySQL都会把log buffer的数据写入log file,并且flush(刷到磁盘)中去,该模式为系统默认。 2:每次事务提交时MySQL都会把log buffer的数据写入log file,但是flush(刷到磁盘)操作并不会同时进行。该模式下,MySQL会每秒执行一次 flush(刷到磁盘)操作 |
1 |
slow_query_log | 开启慢查询日志,默认关闭. | 1 |
log_slow_slave_statements | 记录由Slave所产生的慢查询,默认值OFF。 | 1 |
log_queries_not_using_indexes | 将没有使用索引的 SQL 语句记录到慢查询日志文件中,默认值OFF。 | 1 |
log_throttle_queries_not_using_indexes | 来限制每分钟可以写入慢查询日志的数量。 | 10 |
long_query_time | 慢查询超时时间,默认10秒修改为1秒。 | 1 |
thread_cache_size |
重用保存在缓存中线程的数量:如果Threads_created值过大MySQL服务器一直在创建线程,比较耗资源,可以适当增加配置文件中thread_cache_size值。缓存命中率:Thread_Cache_Hit = (Connections - Threads_created) / Connections * 100%; |
256 |
innodb_io_capacity | InnoDB有后台线程在不断地做Flush操作,影响这个操作频率的就是这个innodb_io_capacity参数。如果碰到系统因为后台Flush操作而产生周期性性能降低的情况,特别是在使用SSD设备的时候,可以适当提高这个参数的值,以加速Flush的频率。(但 For systems with individual 5400 RPM or 7200 RPM drives, you might lower the value to the formerdefault of 100.) | 32768 (SSD 配置) |
innodb_thread_concurrency | 在并发量大的实例上,增加这个值,可以降低InnoDB在并发线程之间切换的花销,以增加系统的并发吞吐量。 | 32 |
slave_parallel_workers | 在进行多线程复制的时候,如果设置此参数为非零值,则可以打开多线程并发执行回放日志的操作,以提升Slave的同步性能。 | 16 |
sync_binlog | MySQL 同步Binlog到磁盘的方式。1 最安全,但性能较差,每一个事务提交时,MySQL都会把Binlog刷新到磁盘中;0性能最好,但不安全。事务提交时,MySQL将Binlog信息写入到Binlog文件(OS Cache)中,但是MySQL不控制Binlog的刷盘操作,由文件系统自己控制其缓存的刷新 | 0 |
tx_isolation | 设置MySQL的隔离级别,读未提交(read-uncommitted);不可重复读(read-committed);可重复读(repeatable-read);串行化(serializable)。这四种级别越来越严格。 | REPEATABLE-READ |
binlog_order_commits | 事务在提交的时候写入Binlog的顺序。这是把双刃剑,如果打开可以保证事务都以相同的顺序写入二进制文件,如果关闭则可以提升性能。需要根据实际情况决定。 | on |
max_allowed_packet | MySQL发送和接受的最大数据包大小,设置过小会导致数据包分裂情况严重。 | 134217728 |
thread_stack | 每个连接线程被创建时,MySQL给它分配的内存大小。 | 262144 |
Linux公社的RSS地址 : https://www.linuxidc.com/rssFeed.aspx
本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-02/157005.htm
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- MySQL性能参数汇总
- Tomcat内核、集群、参数及性能
- 一个可以提升JVM运行性能的参数
- PostgreSQL之性能优化中常用到的配置参数
- 每日一博|Web 性能测试工具 Siege 参数详解
- 性能优化:一个 Flink 参数节省了 50% 的 CPU 消耗
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
An Introduction to the Analysis of Algorithms
Robert Sedgewick、Philippe Flajolet / Addison-Wesley Professional / 1995-12-10 / CAD 67.99
This book is a thorough overview of the primary techniques and models used in the mathematical analysis of algorithms. The first half of the book draws upon classical mathematical material from discre......一起来看看 《An Introduction to the Analysis of Algorithms》 这本书的介绍吧!