文档章节

MySQL误区

ccc_clk
 ccc_clk
发布于 2016/06/24 17:22
字数 695
阅读 13
收藏 1

错误印象一:InnoDB存储引擎适合写密集型应用,MyISAM适合读密集型应用

回答:这个问题大该在8,9年前,也就是2005年的时候在论坛是非常有争论的话题,而上述答案算是在那个年代的一种总结。其实这个答案仅回答了堆 表与索引组织表在更新时的区别,其他很多问题没有考虑。到目前的MySQL 5.6为止,InnoDB存储引擎已经完胜MyISAM了,看不到任何其他应用使用MyISAM的必要性。当然,MyISAM存储引擎本身已经彻底停止开 发了。

 

错误印象二:InnoDB存储引擎存在并发问题,大并发下性能较差

回答:InnoDB的并发问题其实一直是官方改进的重点,目前已经调优的非常不错,MySQL 5.7下只读查询可以轻松达到50W QPS就是最好的证明。另外,Oracle官方对于各种并发瓶颈也进行了优化,比如SSD盘并行刷新优化,重做日志优化,undo多线程purge优化等 等,所以InnoDB存储引擎本身存在的并发问题其实已经很少了。如果是上层的并发瓶颈,比如之前笔者说的电商秒杀问题(回复77可以查看),则可以通过 线程池技术来进行优化。

错误印象三:MySQL复制是不可靠的,经常会导致数据丢失或者复制失败

回答:的确,在MySQL 5.6版本之前,MySQL的复制是存在一些问题的,复制可能是不可靠的。但是在2年半前发布的MySQL 5.6版本中,已经完全解决了复制可靠性问题。

错误印象四:MySQL复制是逻辑复制,所以速度慢,不及Oracle这类的物理复制

回答:逻辑复制肯定慢于物理复制?不一定吧,各种综合因素都很多吧。之前MySQL复制比较慢是因为其复制是单线程的,所以延迟问题比较严重。然 MySQL 5.7、MariaDB 10.0已经支持并行复制功能,延迟问题基本已经解决。比如网易电商使用并行复制后,复制延迟从5个小时降低为0。

错误印象六:sync_binlog需设置为0或者2

回答:MySQL 5.6版本之前存在组提交失效的问题,所以需要把这个参数设置为0或者2来提高性能。但这意味着开启了番多拉魔盒,存在很多的隐藏问题。MySQL 5.6,InnoSQL 5.5,MariaDB 5.5版本都已经解决组提交失效问题。so,sync_binlog务必设置为1

 

© 著作权归作者所有

共有 人打赏支持
上一篇: mysql 按每天统计
下一篇: mysql 按每天统计
ccc_clk
粉丝 0
博文 2
码字总数 750
作品 0
广州
程序员
私信 提问
想要拥抱金融科技你应该避开这几个误区

  【IT168 评论】 不知道从什么时候开始,金融科技忽然成了香饽饽,以区块链、人工智能、大数据和云计算为代表的金融科技成了时下最热的风口,不管是创业者、投资人还是互联网公司、传统金...

it168网站
2017/10/21
0
0
在做MySQL读写分离的时候,在生产环境中都使用那一种?哪一种相对灵活一些?

在做MySQL读写分离时候,在百度上搜了一下。基本上的实现方法(开源)我找了都有如下几种: 1、amoeba(优点很多,主要缺点:不支持事务,这个对于牵扯到 网站交易事物的ACID感觉不太适用)....

mrmusic
2015/10/24
464
0
我必须是「神童」才能当程序员?

强劲的需求和诱人的薪资,越来越多的人想要成为一名程序员。 但很多渴望进入这个行业的人觉得做程序员的门槛非常高,有点望而却步的意思。 但程序员确实被神化了。今天我想揭穿那些神话,并非...

实验楼
07/27
0
0
阿里云王牌架构师杨曦:也谈系统缓存设计误区及高阶使用技巧

阿里云高级解决方案架构师 杨旭 世界最大混合云的总架构师,4年前,开始作为双11阿里云技术负责人,负责搭建全球最大的混合云结构,把 “双11”的电商业务和技术场景在阿里云上实现,并保障这...

云攻略小攻
08/09
0
0
记一次dbcp数据库连接池问题分析

最开始使用数据库连接池DBCP是在公司的项目中,使用Spring+MyBatis直接简单的设置了一些参数就拿来用了。因为配置的部分也是其他同事做好的,所以对于DBCP也没有深入了解过。 后来帮同学写一...

trayvon
2016/06/12
160
0

没有更多内容

加载失败,请刷新页面

加载更多

iOS补位动画、沙漏效果、移动UITableViewCell、模拟贪吃蛇、拖拽进度等源码

iOS精选源码 JHAlertView - 一款黑白配色的HUD之沙漏效果 继承UIButton的自定义按钮SPButton 用递归算法实现iOS补位动画 iOS 长按移动UITableViewCell JHLikeButton - 有趣的点赞动画 兼容X...

Android爱开源
20分钟前
0
0
08.Beetl自定义方法以及直接访问java类方法---《Beetl视频课程》

本期视频实现了发布评论时间自定义显示; 内容简介:使用了自定义方法以及直接访问java方法实现了发布时间自定义显示 一起学beetl目录:https://my.oschina.net/u/1590490?tab=newest&catal...

Gavin-King
21分钟前
0
0
上币至iamToken

https://github.com/consenlabs/token-profile 点击Fork按钮,插入到自己的github项目中 cd /Users/shijun/Desktop/blockChain/iamToken git clone https://github.com/yellmi1983/token-pro......

八戒八戒八戒
23分钟前
0
0
spark——sparkCore源码解析之RangePartitioner

HashPartitioner分区可能导致每个分区中数据量的不均匀。而RangePartitioner分区则尽量保证每个分区中数据量的均匀,将一定范围内的数映射到某一个分区内。分区与分区之间数据是有序的,但分...

freeli
23分钟前
1
0
常用的ES6语法

什么是ES6?   ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了。Mozilla公司将在这个标准的基础上,推出JavaScript 2.0。   ECMAScript和JavaScr...

peakedness丶
27分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部