
mysql
tiny_sxj
这个作者很懒,什么都没留下…
展开
-
可用性时间速算对应
https://mp.weixin.qq.com/s/pWHCieOwAdCrz8cauduWlQ原创 2019-11-19 09:01:56 · 2495 阅读 · 0 评论 -
InnoDB的行锁坑
InnoDB的行锁是实现在索引上的,而不是锁在物理行记录上。潜台词是,如果访问没有命中索引,也无法使用行锁,将要退化为表锁。画外音:Oracle的行锁实现机制不同。例如:t_user(uid, uname, age, sex) innodb; uid PK 无其他索引 update t_user set age=10 where uid=1;命中索引,行锁。u...原创 2019-11-19 08:58:34 · 286 阅读 · 0 评论 -
超赞,InnoDB调试死锁的方法!
超赞,InnoDB调试死锁的方法!原创:58沈剑架构师之路2018-09-05近期写了不少InnoDB锁相关的文章,不少小伙伴问,如何在MySQL终端模拟并发事务,如何复现之前文章中的案例。今天,咱们一起动起手来,模拟并发事务的互斥与死锁。【事前准备】 安装MySQL服务端 安装MySQL客户端 安装能够模拟多个并发事务的终端 画外音:楼主使用...原创 2019-11-18 18:10:00 · 132 阅读 · 0 评论 -
别废话,各种SQL到底加了什么锁?
别废话,各种SQL到底加了什么锁?原创:58沈剑架构师之路2018-08-31这个月花了一些功夫写InnoDB:并发控制,MVCC,索引,锁...有朋友留言:你TM讲了这么多,锁分了这么多类型,又和事务隔离级别相关,又和索引相关,究竟能不能直接告诉我,一个SQL到底加了什么锁!?我竟无言以对。好吧,做过简单梳理之后,今天尝试着直接回答,尽量做到不重不漏...原创 2019-11-18 18:08:48 · 163 阅读 · 0 评论 -
4种事务的隔离级别,InnoDB如何巧妙实现?
4种事务的隔离级别,InnoDB如何巧妙实现?原创:58沈剑架构师之路2018-08-29事务ACID特性,其中I代表隔离性(Isolation)。什么是事务的隔离性?隔离性是指,多个用户的并发事务访问同一个数据库时,一个用户的事务不应该被其他用户的事务干扰,多个并发事务之间要相互隔离。一个事务怎么会干扰其他事务呢?咱们举例子来说明,假设有InnoDB表:...原创 2019-11-18 18:08:08 · 287 阅读 · 0 评论 -
插入InnoDB自增列,居然是表锁?
插入InnoDB自增列,居然是表锁?原创:58沈剑架构师之路2018-08-18《挖坑,InnoDB的七种锁》初步说明了InnoDB中,会使用七种不同类型的锁,今天就介绍其中的第一种,自增锁(Auto-inc Locks)。一,案例说明MySQL,InnoDB,默认的隔离级别(RR),假设有数据表:t(idAUTO_INCREMENT, name);数据...原创 2019-11-18 18:06:38 · 500 阅读 · 0 评论 -
InnoDB并发如此高,原因竟然在这?
InnoDB并发如此高,原因竟然在这?原创:58沈剑架构师之路2018-08-13《InnoDB行锁,如何锁住一条不存在的记录?》埋了一个坑,没想到评论反响剧烈,大家都希望深挖下去。原计划写写InnoDB的锁结束这个case,既然呼声这么高,干脆全盘系统性的写写InnoDB的并发控制,锁,事务模型好了。体系相对宏大,一篇肯定写不完,容我娓娓道来,通俗地说清楚来龙去脉。...原创 2019-11-18 18:05:23 · 119 阅读 · 0 评论 -
1分钟了解MyISAM与InnoDB的索引差异
1分钟了解MyISAM与InnoDB的索引差异原创:58沈剑架构师之路2018-08-27《数据库索引,到底是什么做的?》介绍了B+树,它是一种非常适合用来做数据库索引的数据结构:(1)很适合磁盘存储,能够充分利用局部性原理,磁盘预读;(2)很低的树高度,能够存储大量数据;(3)索引本身占用的内存很小;(4)能够很好的支持单点查询,范围查询,有序性查询;数据...原创 2019-11-18 18:04:35 · 125 阅读 · 0 评论 -
三范式
第一范式(1NF): 列1唯一确定列2, 列3, 列4, ...,即列2, 列3, 列4, ...不能再分裂出其它列。 假设有关系模式列1: 订单名; 列2: 商品。一个订单下可以有多个商品,即列2: 商品可以分裂成商品A, 商品B, 商品C, ...,所以列1: 订单名; 列2: 商品这样的关系模式不符合第一范式。第二范式(2NF): 满足2NF的前提是必须满足1NF。...原创 2019-10-06 17:55:39 · 213 阅读 · 0 评论 -
MYSQL事务和隔离级别
https://zhuanlan.zhihu.com/p/70701037一、事务事务是由一组SQL语句组成的逻辑处理单元,是满足 ACID 特性的一组操作,可以通过 Commit 提交一个事务,也可以使用 Rollback 进行回滚。事务具有以下4个属性,通常简称为事务的ACID属性:原子性(Atomicity):事务是一个原子操作单元,其对数据的修改,要么全都执行,要么全都不执行。...原创 2019-10-06 17:30:51 · 125 阅读 · 0 评论 -
数据库设计规约
https://www.jianshu.com/p/7e60dbd591381、引言数据库设计过程中表、字段等的命名规范也算是设计规范的一部分,不过设计规范更多的是为了确保数据库设计的合理性、为了项目最终的协调稳定性,而命名规范则更多的是为了确保设计的正式和统一。公正的讲,数据库中表字段等等以什么样的方式命名、取具体什么名字,并不会直接影响到项目的稳定性,不是说叫黑猫项目就是正常的,叫白猫...原创 2019-08-11 15:29:30 · 677 阅读 · 0 评论 -
数据库隔离级别
SQL-92标准中定义了四个隔离级别,这四个隔离级别在以前版本的SQL Server中即受到支持:本文系转载,原文地址:http://singo107.iteye.com/blog/1175084数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读...转载 2017-11-17 11:30:13 · 239 阅读 · 0 评论 -
mysql order by limit slow 慢查询
最近项目中遇到很奇怪的事情 言简意赅: 背景:数据量大约在300万左右, id为主键,有一个有好几个字段的索引, INDEX_1(f1,f2,f3,f4) , sql 查询条件为 f1=1, w5=xx,w6=zz.....,order by id desc limit 10; 加上where条件之后总的查询结果集才3条, 查询时间在 7秒左右,但是去掉order by id desc ,查询就变...原创 2017-12-13 09:46:45 · 3807 阅读 · 0 评论