数据库
数据库
peacejl
这个作者很懒,什么都没留下…
展开
-
Mysql数据库读写锁相关
和读锁、写锁相关的场景一个线程想读取一行数据,而且这行数据正在被修改。这时候会发生什么?1.SELECT … FROM是一个快照读,通过读取数据库的一个快照,不会加任何锁,除非将隔离级别设置成了 SERIALIZABLE 。排他锁什么时候使用innodb引擎的insert,update,delete操作都会给操作数据加上排他锁(行级锁).这时候其他事务是没法对这行数据进行操作的.。在所有索引扫描范围的索引记录上加上排他的next key锁。如果是唯一索引,只需要在相应记录上加index r原创 2020-11-28 18:16:11 · 192 阅读 · 0 评论 -
B树、B+树
B树的诞生1970年,R.Bayer和E.mccreight提出了一种适用于外查找的树,它是一种平衡的多叉树,称为B树(或B-树、B_树)。B树的定义,性质B树:平衡的多叉树、平衡多路查找树(查找路径不只两个)性质:根结点至少有两个子女;每个非根节点所包含的关键字个数 j 满足:┌m/2┐ - 1 <= j <= m - 1;?除根结点以外的所有结点(不包括叶子结点)的度数正好是关键字总数加1,故内部子树个数 k 满足:┌m/2┐ <= k <= m ;?所有的叶子结原创 2020-10-15 11:56:59 · 206 阅读 · 0 评论 -
数据库相关整理(主要和Mysql和基本概念相关)
数据库查询流程图连接器查询缓存(默认关闭)分析器:分析语法优化器:索引、执行顺序关于数据库缓存MYSQL5.6默认情况下已经禁用缓存了MySQL8.0之后缓存就被取消了优化器默认的Mysql缓存innodb在查询时,我们客户端只输入主键的值,他是如何找到数据的?和B+树相关,解释如下:首先,B+树和二叉查询树相关。二叉查询树的数据结构不适合数据库,因为:查找效率与层数相关。越处在下层的数据,就需要越多次比较。极端情况下,n个数据需要n次比较才能找到目标值。对于数据库来说,每进入原创 2020-10-15 11:45:32 · 136 阅读 · 0 评论 -
关于数据库的查询优化
加粗样式原创 2020-10-15 15:32:22 · 146 阅读 · 0 评论 -
数据库-索引相关
什么是索引?索引是关系型数据库中给数据库表中一列或多列的值排序后的存储结构;帮助MySQL高效获取数据的数据结构;所谓索引,就是以某个字段为关键字的B树文件;-阮一峰为什么需要索引?数据库以B树格式储存,能解决的问题和不能解决的问题解决了:按照"主键"(其实是主键索引)查找数据的问题没有解决:通过其他数据库字段查找数据的问题。想查找其他字段,就需要建立索引(index)主键和索引的区别?主键是表中的一个字段,能够唯一标识一条记录;索引是一种数据库存储数据时使用的一种数据结构。索引是底原创 2020-10-15 11:54:59 · 272 阅读 · 0 评论 -
数据库事务
串行化是事务的隔离级别也是所有关系型数据库应该具备的隔离级别。悲观锁是一种实现串行化的方式,最典型的悲观锁就是两段锁。但是串行化有很多种实现方式,比如悲观锁、乐观锁、MVCC等。所以他俩不能用区别来形容。...原创 2020-05-06 14:46:28 · 154 阅读 · 0 评论 -
Mysql
binlog格式mysql binlog的格式三种:statement,row,mixed原创 2020-05-06 11:00:57 · 138 阅读 · 0 评论 -
mongodb
MongoDB 支持 Join2015 年 12 月,在发布的 3.2 版本中,在 MongoDB 的聚合框架(Aggregation)中增加了一个不起眼的操作符: $lookup。 这个看上去虽小,但是意义巨大的功能意味着第一次作为一个 NoSQL 数据库,MongoDB 终于开始支持了关系型数据库的核心功能:关联MongoDB 自动分片在关系型数据库中,当数据量达到一定程度,单个节点服务器资源充分饱和无法保证及时的服务响应时间时,通常会采用分区分表的数据库优化方案。但是这些方案都是侵入式的,很多原创 2020-04-27 19:16:06 · 161 阅读 · 0 评论 -
Mysql int类型字段,自动删掉0和自动补充0
自动去“0”Mysql字段类型为int时,如果输入的数据时010,那么会自动把010变成10存储;固定位数补充“0”需要在定义字段时,配置zerofill属性。原创 2020-04-27 11:04:02 · 1360 阅读 · 0 评论