mysql DB server端,如何让读写更快
其实,我不是专业的DB管理同学,甚至算不上会了解。只是在最近的工作中,遇到了DB server端优化的契机,所以把这些手段记录下来:
通过调整这个参数的值,可以让DB更给力:
这两个参数的含义:
1. sync_binlog
设置为1,this makes MySQL synchronize the binary log's contents to disk each time it commits a transaction。
设置为1000,那么意味着缓存里缓存了1000条数据,如果此时server宕机或OS crash,那么缓存里的数据就会丢失。这可能就是“速度”的代价。
具体设置成多少,要看应用上的“承受”能力及mysql server的“靠谱”程度,折衷进行考虑。
2. innodb_flush_log_at_trx_commit
设置为1,每次事务提交,都把日志写入硬盘(真的flush磁盘),这是很费时的。特别是使用电池供电缓存(Battery backed up cache)时。
设置为2,每次事务提交,不是直接flush写磁盘,而是先写入缓存。日志仍会持续flush进磁盘,只是这个频率和节奏由OS负责,一般是1-2s一刷。
设置为0,log buffer每秒就会被刷写日志文件到磁盘,提交事务的时候不做任何操作。话说会更快一点,但安全方面较差。
总的来说,
设为1,保证了完整的ACID性。设置成更高的值,可以
换取更高的性能,但是在系统崩溃的时候,将会丢失大约1秒的数据。
设为2,只有在操作系统崩溃或者断电的时候才会丢失最后1秒的数据。InnoDB在做恢复的时候会忽略这个值。
设为0,mysqld进程崩溃的时候,就会丢失最后1秒的事务。
mysql DB server端,如何让读写更快的更多相关文章
- (转)使用Amoeba 实现MySQL DB 读写分离
Amoeba(变形虫)项目是一个开源框架,于2008年开始发布一款 Amoeba for Mysql软件: 这个软件致力于MySQL的分布式数据库前端代理层,它主要在应用层访问MySQL的时候充当SQ ...
- 使用Amoeba 实现MySQL DB 读写分离
Amoeba(变形虫)项目是一个开源框架,于2008年开始发布一款 Amoeba for Mysql软件: 这个软件致力于MySQL的分布式数据库前端代理层,它主要在应用层访问MySQL的时候充当SQ ...
- 分享 koa + mysql 的开发流程,构建 node server端,一次搭建个人博客
前言 由于一直在用 vue 写业务,为了熟悉下 react 开发模式,所以选择了 react.数据库一开始用的是 mongodb,后来换成 mysql 了,一套下来感觉 mysql 也挺好上手的.re ...
- Zabbix(二) : Zabbix Server端配置文件说明
Zabbix Server端配置文件说明 # This is a configuration file for Zabbix Server process # To get more informat ...
- Zabbix Server端配置文件说明
zabbix作为运维邻域不可缺少的一员,它的各种文档可是数不胜数啊,但是关于配置文件的解释与说明就有点少.这里列出zabbix配置文件篇之zabbix_server. Zabbix Server端配置 ...
- Zabbix Server端配置文件
Zabbix Server端配置文件说明 # This is a configuration file for Zabbix Server process # To get more informat ...
- [mysql终极优化]之主从复制与读写分离详细设置教程
读写分离与主从复制是提升mysql性能的重要及必要手段,大中型管理系统或网站必用之. 一.什么是读写分离与主从复制 先看图 如上图所示,当web server1/2/3要写入数据时,则向mysql d ...
- Dubbo入门到精通学习笔记(二十):MyCat在MySQL主从复制的基础上实现读写分离、MyCat 集群部署(HAProxy + MyCat)、MyCat 高可用负载均衡集群Keepalived
文章目录 MyCat在MySQL主从复制的基础上实现读写分离 一.环境 二.依赖课程 三.MyCat 介绍 ( MyCat 官网:http://mycat.org.cn/ ) 四.MyCat 的安装 ...
- MySQL+Amoeba实现数据库主从复制和读写分离
MySQL读写分离是在主从复制的基础上进一步通过在master上执行写操作,在slave上执行读操作来实现的.通过主从复制,master上的数据改动能够同步到slave上,从而保持了数据的一致性.实现 ...
随机推荐
- 转:C# DataGridView控件清空数据出错解决方法
C# DataGridView控件绑定数据后清空数据在清除DataGridview的数据时: 1.DataSource为NULL(DataGridView.DataSource= null;)这样会将 ...
- Wix 安装部署(二)自定义安装界面和行为
上一篇介绍了如何联合MSBuild来自动生成打包文件和对WIX的一些初步认识,http://www.cnblogs.com/stoneniqiu/p/3355086.html . 这篇会在上篇的基础上 ...
- MongoDB中的字段类型Id
众所周知,在向MongoDB的集合中添加一条记录时,系统会自动增加一个字段名为"_id",类型为ObjectId的字段,其值为24位字符串,可以使用此值作为记录的唯一标识. 项目中 ...
- python time
Python-time 计算程序运行时间 import time start = time.clock() time.sleep(5) end = time.clock() runtime = end ...
- [ACM_几何] Metal Cutting(POJ1514)半平面割与全排暴力切割方案
Description In order to build a ship to travel to Eindhoven, The Netherlands, various sheet metal pa ...
- mac 隐藏、显示文件
方法一:打开终端 显示:defaults write com.apple.finder AppleShowAllFiles -bool true隐藏:defaults write com.apple. ...
- crossplatform---Nodejs in Visual Studio Code 09.企业网与CNPM
1.开始 CNPM : https://npm.taobao.org/ 2.企业网HTTP代理上网 平时办公在一个大企业网(10.*.*.*)中,使用HTTP代理上网,发现npm命令无法执行. 解决方 ...
- paip.log4j兼容linux windows 路径设置
paip.log4j兼容linux windows 路径设置 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog ...
- Javascript正则表达式的初步学习
<html> <head> <meta charset="utf-8"> <title>正则表达式的学习</title> ...
- javascript设计模式与开发实践阅读笔记(4)——单例模式
定义 单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点. 具体来说,就是保证有些对象有且只有一个,比如线程池.全局缓存.浏览器中的window 对象等.在js中单例模式用途很广,比如登录 ...