天道不一定酬所有勤
但是,天道只酬勤

数据库

MySQL索引完全解读

hollischuang阅读(1715)评论(3)赞(2)

索引这个词,相信大多数人已经相当熟悉了。不过为了文章的完整性,这里再啰嗦一下。索引是一种数据结构,用于帮助我们在大量数据中快速定位到我们想要查找的数据。 索引最形象的比喻就是图书的目录了。 注意这里的大量,数据量大了索引才显得有意义,如果我...

不就是SELECT COUNT语句吗,竟然能被面试官虐的体无完肤

hollischuang阅读(777)评论(1)赞(4)

数据库查询相信很多人都不陌生,所有经常有人调侃程序员就是CRUD专员,这所谓的CRUD指的就是数据库的增删改查。 在数据库的增删改查操作中,使用最频繁的就是查询操作。而在所有查询操作中,统计数量操作更是经常被用到。 关于数据库中行数统计,无...

一次数据库的死锁问题排查过程

hollischuang阅读(2450)评论(3)赞(4)

现象 某天晚上,同事正在发布,突然线上大量报警,很多是关于数据库死锁的,报警提示信息如下: {"errorCode":"SYSTEM_ERROR","errorMsg":"nested exception is org.apache.iba...

MySQL中的读锁和写锁

hollischuang阅读(10690)评论(5)赞(3)

在数据库的锁机制中介绍过,数据的锁主要用来保证数据的一致性的,数据库的锁从锁定的粒度上可以分为表级锁、行级锁和页级锁。在我的博客中重点介绍过MySQL数据库的行级锁。这篇文章主要来介绍一下MySQL数据库中的表级锁。 本文提到的读锁和写锁都...

MySql的InnoDB引擎的索引知识小结

hollischuang阅读(4928)评论(5)赞(0)

InnoDB存储引擎支持两种常见的索引:B+树索引、Hash索引。 B+树索引是目前关系型数据库系统中最常见、最有效的索引。 B+树中的B代表的不是二叉(binary),而是平衡(balance),所以,B+树是平衡树并不是二叉树。 B+树...

深入分析事务的隔离级别

hollischuang阅读(27998)评论(10)赞(9)

本文详细介绍四种事务隔离级别,并通过举例的方式说明不同的级别能解决什么样的读现象。并且介绍了在关系型数据库中不同的隔离级别的实现原理。 在DBMS中,事务保证了一个操作序列可以全部都执行或者全部都不执行(原子性),从一个状态转变到另外一个状...

深入理解乐观锁与悲观锁

hollischuang阅读(68741)评论(12)赞(10)

在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。 乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。 无...

MySQL中的共享锁与排他锁

hollischuang阅读(35524)评论(3)赞(13)

在MySQL中的行级锁,表级锁,页级锁中介绍过,行级锁是Mysql中锁定粒度最细的一种锁,行级锁能大大减少数据库操作的冲突。行级锁分为共享锁和排他锁两种,本文将详细介绍共享锁及排他锁的概念、使用方式及注意事项等。 共享锁(Share Loc...

MySQL中的行级锁,表级锁,页级锁

hollischuang阅读(32090)评论(3)赞(9)

在计算机科学中,锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的满足。 在数据库的锁机制中介绍过,在DBMS中,可以按照锁的粒度把数据库锁分为行级锁(INNODB引擎)、表级锁(MYISAM引擎)和页级锁...

HollisChuang's Blog

联系我关于我