
MySQL
文章平均质量分 77
Xukaiy
这个作者很懒,什么都没留下…
展开
-
B+树、B树
平衡二叉树 平衡二叉树(Balanced Binary Tree)又被称为AVL树(有别于AVL算法),且具有以下性质:它是一 棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树。这个方案很好的解决了二叉查找树退化成链表的问题,把插入,查找,删除的时间复杂度最好情况和最坏情况都维持在O(logN)。但是频繁旋转会使插入和删除牺牲掉O(logN)左右的时间,不过相对二叉查找树来说,时间上稳定了很多(查找的时间复杂度为log(n))。 B-tree 定义 对于一颗M阶B树具有原创 2021-05-18 23:49:58 · 351 阅读 · 1 评论 -
MySQL日志
MySQL日志 一、redo log 日志 1.1、基本概念 redo log包括两部分:一是内存中的日志缓冲(redo log buffer),该部分日志是易失性的;二是磁盘上的重做日志文件(redo log file),该部分日志是持久的。 为了确保每次日志都能写入到事务日志文件中,在每次将log buffer中的日志写入日志文件的过程中都会调用一次操作系统的fsync操作(即fsync()系统调用)。因为 MariaDB/MySQL 是工作在用户空间的,MariaDB/MySQL 的log buffe原创 2021-05-17 23:08:31 · 89 阅读 · 0 评论 -
MySQL事务
事务 概述 事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消。也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做 事务的四大特性 原子性:整个事务中的所有操作,要么全部完成,要么全部不完成 隔离性:事务内部的操作与其他事务是隔离的,并发执行的各个事务之间不能互相干扰 持久性:在事务完成以后,该事务所对数据库所作的更改便持久的保存在数据库之中,并不会被回滚 一致性:在事务开始之前和事务结束以后,数据库的完整性约束没有被破坏 ACID原创 2021-05-14 23:43:21 · 80 阅读 · 0 评论 -
MVCC原理
一、前提概要 MVCC概念 MVCC,全称Multi-Version Concurrency Control,即多版本并发控制。MVCC是一种并发控制的方法,一般在数据库管理系统中,实现对数据库的并发访问,在编程语言中实现事务内存。 快照读和当前读 在学习MVCC多版本并发控制之前,我们必须先了解一下,什么是MySQL InnoDB下的当前读和快照读? 当前读 像select lock in share mode(共享锁), select for update ; update, insert ,de转载 2021-05-13 23:42:54 · 403 阅读 · 0 评论 -
MySQL中的锁
MySQl中的锁(行锁、表锁) 概念 锁是计算机协调多个进程或纯线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所在有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂 概述 MySQL大致可归纳为以下3种锁: 表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。 行级锁:开销原创 2021-05-12 22:43:12 · 89 阅读 · 0 评论