Mysql配置项的简单优化
preface
众所周知,Mysql已经成为广泛使用的开源数据库了,so 公司阿里云的数据库为Mysql,在最开始的时候是直接yum安装,配置项都是默认的,没有任何调整,这次有时间就参考各路大神的资料,把公司的mysql给优化了下。
优化配置项
我们需要关注下面几个配置项,如果忽略了他们,那么会很快遇到性能问题。
innodb_buffer_pool_size
在使用innodb引擎的环境中,在安装完后,这个是第一个需要关注的配置项。缓冲池是数据和索引被缓存的地方,这个值要尽可能的大。典型的配置是5-6GB(8GB RAM),20-2GB(32GB RAM),100-120GB(128GB RAM)。 例如innodb_buffer_pool_size=4G,默认是128Minnodb_log_file_size:
redo log的大小,redo log被用来保证写入的速度和故障恢复。建议设置为innodb_log_file_size=512MB,但对于频繁的数据库,这个值应该调整为innodb_log_file_size=4GB.max_connections:
默认是151个连接数,如果设置过大的话(1000或者以上),Mysql请求数会很大的,那么它可能会失去响应,容易报Too many connections的错误。
关于Innodb存储引擎的优化
innodb_file_per_table:
用于控制不同的表是否使用独立的.ibd文件。设置为on时,它可以在丢弃或者截断表时能够回收存储空间。在Mysql5.6版本以后,这个值默认就是on。因此需要在5.6版本以前的进行设置,设置后仅仅对新创建的表有效。innodb_flush_log_at_trx_commit:
默认值是1,意味着Innodb是与ACID完全兼容的,如果考虑数据安全性第一需求的话,那么就要把这个值设置为1。在开启之后,额外的系统fsync调用对低速硬盘来说,是一个巨大的系统开销。设置为2时,在数据安全性方面稍微下降,因为此时每隔1s才把事务写入redo log中。在某些数据完整性要求不高的情况下,可以设置为2或者为0.query_cache_size:
建议一开始就设置为0,完全禁用查询缓存。slow_query_log:
设置为1,表示启用满查询日志。慢查询日志是记录执行时间超过指定时间(long_query_time)的Mysql查询,是分析和优化Mysql的最重要的文件。long_query_time:
默认值为10,建议修改为1,在大部分应用中,超过1s的查询基本可以判断为需要关注的执行语句。slow_query_log_file:
指定慢查询日志的记录文件位置。
Mysql配置项的简单优化的更多相关文章
- [mysql] 2进制安装和简单优化
##################################mysql 2进制安装和简单优化################################################## ...
- [评测]低配环境下,PostgresQL和Mysql读写性能简单对比(欢迎大家提出Mysql优化意见)
[评测]低配环境下,PostgresQL和Mysql读写性能简单对比 原文链接:https://www.cnblogs.com/blog5277/p/10658426.html 原文作者:博客园--曲 ...
- mysql的简单优化【简单易学】
1.选取最适用的字段属性: 表字段尽量设小,不要给数据库增加没必要的空间:如:值为'01'.'02',给char(2)即可: 2.使用连接(JOIN)来代替子查询(Sub-Queries): 使用jo ...
- mysql简单优化思路
mysql简单优化思路 作为开发人员,数据库知识掌握的可能不是很深入,但是一些基本的技能还是要有时间学习一下的.作为一个数据库菜鸟,厚着脸皮来总结一下 mysql 的基本的不能再基本的优化方法. 为了 ...
- mysql简单优化的一些总结
mysql对cpu的利用特点: 5.1之前,多核支持较弱:5.1可利用4个核:5.5可利用24核:5.6可利用64个核:每个连接对应一个线程,每个并发query只能使用一个核 mysql对内存的利用特 ...
- mysql之优化器、执行计划、简单优化
mysql之优化器.执行计划.简单优化 2018-12-12 15:11 烟雨楼人 阅读(794) 评论(0) 编辑 收藏 引用连接: https://blog.csdn.net/DrDanger/a ...
- [MySQL Reference Manual] 8 优化
8.优化 8.优化 8.1 优化概述 8.2 优化SQL语句 8.2.1 优化SELECT语句 8.2.1.1 SELECT语句的速度 8.2.1.2 WHERE子句优化 8.2.1.3 Range优 ...
- MySql学习(六) —— 数据库优化理论(二) —— 查询优化技术
逻辑查询优化包括的技术 1)子查询优化 2)视图重写 3)等价谓词重写 4)条件简化 5)外连接消除 6)嵌套连接消除 7)连接消除 8)语义优化 9)非SPJ优化 一.子查询优化 1. ...
- 101个MySQL 的调节和优化的提示
MySQL是一个功能强大的开源数据库.随着越来越多的数据库驱动的应用程序,人们一直在推动MySQL发展到它的极限.这里是101条调节和优化MySQL安装的技巧.一些技巧是针对特定的安装环境的,但这些思 ...
随机推荐
- c#类库和可移值类库的区别
所谓类库,只能指定一个类库的可运行平台. 而可移值类库,可以在无需修改代码的情况,同时可以在多平台上运行DLL文件.多平台如NET Framework.Silverlight.Windows Phon ...
- mutex与semaphore的区别
网摘1:Mutex 的发音是 /mjuteks/ ,其含义为互斥(体),这个词是Mutual Exclude的缩写.Mutex在计算机中是互斥也就是排他持有的一种方式,和信号量-Semaphore有可 ...
- make the innerText in the html element can not be selected
approach style="-moz-user-select:none;" onselectstart="javascript:return false;" ...
- 新的博客 bincoding.github.io
最近周围的人都在用静态博客,随主流也换了github page搭建hexo. bincoding.github.io 个人网站,用来上线乱七八糟的东西: bincoding.cn
- 【Alpha版本】冲刺阶段——Day 3
我说的都队 031402304 陈燊 031402342 许玲玲 031402337 胡心颖 03140241 王婷婷 031402203 陈齐民 031402209 黄伟炜 031402233 郑扬 ...
- lineNumber: 1; columnNumber: 1; 前言中不允许有内容
周六项目还能运行,也没修改什么,周一来了启动项目,竟然报错了~~~ 这是遇到的错误提示: Cause: org.xml.sax.SAXParseException; lineNumber: 1; co ...
- Java--剑指offer(9)
41.输出所有和为S的连续正数序列.序列内按照从小至大的顺序,序列间按照开始数字从小到大的顺序 import java.util.ArrayList; public class Solution { ...
- JVM学习之jstat使用方法
Jstat是JDK自带的一个轻量级工具,主要用JVM内建的指令对java应用程序的资源和性能进行实时的监控. 基本语法 jstat <option> [-t] [-h] <pid&g ...
- Echarts-画柱状,折线图
导入echarts包 <script src='../scripts/libraries/echarts/echarts-all.js'></script> 堆积图js var ...
- 【转】HTTP中的长连接和短连接分析
1. HTTP协议与TCP/IP协议的关系 HTTP的长连接和短连接本质上是TCP长连接和短连接.HTTP属于应用层协议,在传输层使用TCP协议,在网络层使用IP协议.IP协议主要解决网络路由和寻址问 ...