社区编辑申请
注册/登录
如果对MySQL还停留在这个印象,就out了
数据库 MySQL
笔者整理了一些常见的MySQL错误印象,希望开发人员能够以发展的眼光来看待事物。

笔者明白,有些错误印象是因为某些无良技术服务公司,为了赚钱而误导相关人员所致。有些问题是由于历史原因而导致的错误印象,但是任何事物都是发展的,或许有些问题早已在新版本中给解决了。为此,笔者整理了一些常见的MySQL错误印象,希望开发人员能够以发展的眼光来看待事物。

如何对MySQL还停留在这个印象,就out了

错误印象一: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版本InnoSQL,可以免费获得技术支持。

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

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

错误印象五:MySQL复制不能保证主从数据完全一致,不适合数据严格一致要求的场景

回答:上述这个错误观点竟然出自淘宝的VP,笔者只能说为了推广淘宝自己的OceanBase,已经不择手段的来抹黑MySQL了。MySQL 5.7已提供了数据零丢失的复制方法,配置一个参数就能解决。类似的PostgreSQL、Oracle也都是通过先写远程日志来保障数据零丢失,这本身并不是很新的技术。而网易也已经在云数据库中使用该技术有近3年的时间(InnoSQL早在5.5就已经支持),可以说是完全经过线上应用考验的技术。只能说有些细节问题可能需要考虑,不过有问题,同样可以咨询笔者。

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

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

责任编辑:Ophira 来源: insideMYSQL
相关推荐

2022-04-01 10:08:21

SQL 优化MySQL数据库

2022-05-17 11:06:44

数据库MySQL系统

2022-04-26 08:10:33

MySQL存储InnoDB

2022-04-28 08:05:05

2022-05-07 10:20:17

truncatedeleteMySQL

2022-04-14 13:48:33

MySQL数据库并发量

2022-04-02 10:23:12

MySQL数据库

2022-03-16 14:45:18

MySQL慢查询数据库

2022-05-05 13:57:43

2022-03-31 16:47:30

mysqlcount面试官

2022-03-25 10:38:40

索引MySQL数据库

2022-04-25 10:04:58

2022-05-19 15:47:24

碰一碰连接设备开发鸿蒙

2022-04-14 11:17:41

MySQL字符配置

2022-05-03 10:30:09

微软Windows 11

2022-04-26 09:44:03

group byExtraMySQL

2022-04-12 09:04:57

2022-04-14 10:24:27

分布式系统性能

2022-03-19 16:47:47

WordPress网站迁移服务器

2022-04-25 09:39:42

桌面服务器Linux

同话题下的热门内容

关于MySQL数据库性能优化方法,看这一篇文章就够了分库分表会带来读扩散问题?怎么解决?面试官问我 InnoDB 的物理存储结构!浅析MySQL日志体系聊聊索引失效的经典场景InnoDB B-TREE 索引怎么定位一条记录?MySQL常用查询Databases和Tables爷青回,Canal 1.1.6来了,几个重要特性和bug修复

编辑推荐

MySQL集群搭建详解如果对MySQL还停留在这个印象,就out了防止服务器宕机时MySQL数据丢失的几种方案MySQL innodb引擎备份工具XtraBackup之二(数据库全备)MySQL优化: Slave延迟很大的优化方法总结
我收藏的内容
点赞
收藏

51CTO技术栈公众号