在上篇文章中涉及到了一个小小的问题,就是数据库事务的一致性视图是啥时候建立的?
这个问题还比较重要,如果没搞清楚,可能会影响我们做实验的结果,进而得出错误的结论,所以今天松哥和大家简单聊一聊这个话题。
在上篇文章中涉及到了一个小小的问题,就是数据库事务的一致性视图是啥时候建立的?
这个问题还比较重要,如果没搞清楚,可能会影响我们做实验的结果,进而得出错误的结论,所以今天松哥和大家简单聊一聊这个话题。
[TOC]
前面写了一篇文章和大家分享了 MySQL 中查询表记录数的问题,里边涉及到一个知识点 MVCC 多版本并发控制。这个问题不搞懂,总感觉缺点什么。因此今天我想花点时间和大家聊一聊 MVCC。
纳尼?MySQL 中 count(*) 比 count(1) 快?
今天有人跟我讲 MySQL 中 count(1)
比 count(*)
快,这能忍?必须得和他掰扯掰扯。
声明:以下讨论基于 InnoDB 存储引擎,MyISAM 因为情况特殊我在文末会单独说一下。
[TOC]
上周松哥转载了一个数据批量插入的文章,里边和大家聊了一下数据批量插入的问题,批量插入到底怎么做才快。
有个小伙伴看了文章后提出了不同的意见:
前两周松哥一时兴起,整了一锅馒头,第一次尝试,效果还不错,虽然馒头的外观不大美观,但是味道还是杠杠滴:
[TOC]
松哥之前发过视频和大家聊 MySQL 的主从搭建,还没看过的小伙伴可以看这里:
不过那一次是基于 MySQL5.7 搭建的,最近工作需要,搭建了基于 MySQL8 的主从,和 MySQL5.7 的搭建还是有一些不同,于是稍微记录下。
[TOC]
前面几篇文章和大家聊了 MySQL 中的 MyISAM 引擎,也聊了 MySQL 一些进阶配置,还没看过的小伙伴可以先看看哦:
[TOC]
存在即合理,虽然在互联网公司中 InnoDB 引擎使用较多,但是 MyISAM 引擎的特性自有它自己的使用场景,今天松哥就来和大家捋一捋 MyISAM,这也是我们 MySQL 进阶必经之路。
MyISAM 是 MySQL 的默认数据库引擎(5.5版之前),由早期的 ISAM 所改良。虽然性能极佳,但却有一个缺点:不支持事务处理(transaction)。最近几年,MySQL 逐渐使用 InnoDB 代替了 MyISAM,关于 InnoDB 和 MyISAM 的历史纠葛,松哥在上篇文章中(MySQL 体系架构简介)已经和大家介绍过了,这里就不再赘述。
索引小伙伴们肯定经常用!但是有一种前缀索引不知道大家有没有用过或者听说过?今天松哥就来和大家聊一聊 MySQL 里边的这个前缀索引。
所谓前缀索引说白了就是对文本的前几个字符(具体是几个字符在建立索引时指定)建立索引,这样建立起来的索引更小,所以查询更快。这有点类似于 Oracle 中对字段使用 Left 函数来建立函数索引,只不过 MySQL 的这个前缀索引在查询时是内部自动完成匹配的,并不需要使用 Left 函数。
[TOC]
当然不是!
其实本来今天是要和大家聊一聊 MyISAM 引擎的,结果在写的过程中,又发现锁这个话题可以单独写一篇,于是就有了今天的文章。
说到 MyISAM 和 InnoDB 的区别,很多人都知道,区别在于一个是表锁一个是行锁,那么小伙伴们有没有想过,表锁和行锁有什么区别?各自又有哪些玩法?今天松哥就来和大家聊聊这个话题。