![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
关系型数据库
MySQL,Oracle,PostgreSQL
19Winter
这个作者很懒,什么都没留下…
展开
-
MyISAM和InnoDB区别
MyISAM和InnoDB的区别:InnoDB支持事务,MyISAM不支持。InnoDB支持外键,MyISAM不支持。InnoDB使用聚簇索引,索引文件和数据文件是放在一起的;MyISAM使用非聚簇索引,数据文件和索引文件分开存放,并且MyISAM的索引是可以压缩的。InnoDB每个表只能有一个聚簇索引,二级索引的叶子节点存的是主键值;MyISAM叶子节点存的是数据的地址。InnoDB支持表锁和行锁;MyISAM支持表锁。...原创 2020-07-28 23:22:46 · 156 阅读 · 0 评论 -
MySQL锁
MySQL锁概述不同存储引擎的锁机制:MyISAM采用的是表级锁。InnoDB既支持行级锁,也支持表级锁。InnoDB行锁是通过给索引项加锁来实现的,只有通过索引条件检索数据才会加行锁,在没有索引的情况下使用表锁。表锁行锁特点:表锁:开销小,加锁快,不会出现死锁,锁粒度大,发生锁冲突的概率大,并发度低,适合查询场景。行锁:开销大,加锁慢,会出现死锁,发生锁冲突几率低,并发度高,适合大部分应用场景。MyISAM表共享读锁(Table Read Lock):不会阻塞其他事务对同一表的原创 2020-07-28 23:21:40 · 138 阅读 · 0 评论 -
MySQL执行计划
MySQL执行计划ColumnMeaningidThe SELECT identifierselect_typeThe SELECT typetableThe table for the output rowpartitionsThe matching partitionstypeThe join typepossible_keysThe possible indexes to choosekeyThe index actually原创 2020-07-27 03:40:18 · 214 阅读 · 0 评论 -
binlog redolog undolog
bin logbin log是位于MySQL服务层,记录所有数据库表结构和表数据修改的二进制日志。redo loginnodb事务日志包括的redo log 和 undo log。redo log是物理日志,记录的是数据页的物理修改,它保证了事务的持久性。redo log分为两部分:一个是内存中的日志缓冲(redo log buffer),该部分日志是容易丢失的。二是磁盘上的重做日志文件(redo log file),该部分是持久的。事务在提交时,必须先将该事物的所有事务日志写入到磁盘上的redo原创 2020-07-25 23:44:18 · 249 阅读 · 0 评论 -
MySQL索引相关概念
1.什么是索引?2.索引为什么可以加快查询?3.什么是聚簇索引,什么是非聚簇索引?4.b树和b+树的区别5.索引的分类6.为什么主键要设置成自增?7.回表8.索引覆盖9.最左匹配原则10.索引下推原创 2020-07-25 21:30:11 · 150 阅读 · 0 评论 -
数据库事务相关概念
事务的基本特征:ACID原子性(atomicity)一个事务必须被视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚,对于一个事务来说,不可能只执行其中的一部分操作,这就是事务的原子性。一致性(consistency)数据库总是从一个一致性的状态转换到另外一个一致性的状态。隔离性(isolation)通常来说,一个事务所做的修改在最终提交以前,对其他...原创 2019-06-24 19:52:30 · 239 阅读 · 0 评论 -
索引
什么是索引?索引(在MySQL中也叫做“键”)是存储引擎用于快速找到记录的一种数据结构。索引存储在文件系统中。索引的文件存储形式与存储引擎有关。为什么索引可以加快查询速度?1.索引大大减少了服务器需要扫描的数据量。2.索引可以帮助服务器避免排序和临时表3.索引可以将随机I/O变为顺序I/O哪些数据结构可以提高查询速度,MySQL为什么使用B+树?1.hash表 ...原创 2020-01-20 03:53:29 · 289 阅读 · 0 评论 -
《高性能MySQL》第四章到第六章笔记
第四章 Schema与数据类型优化 选择优化的数据类型 1. 尽量使用可以正确存储数据的最小数据类型:占用更小磁盘、内存和cpu 2. 更简单的数据类型:需要更少的cpu周期 3. 避免包含null的列:使索引更复杂 mysql三大范式 第一范式:无重复的列 第二范式:一个表中不能有两个主键 第三范式:属性不依赖于其他属性 范式优点: ·更新操作更快 ·当...原创 2019-06-21 00:21:22 · 212 阅读 · 0 评论 -
mysql分区功能
一,什么是数据库分区前段时间写过一篇关于mysql分表的的文章,下面来说一下什么是数据库分区,以mysql为例。mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面(可以通过my.cnf中的datadir来查看),一张表...转载 2018-08-25 08:49:34 · 183 阅读 · 0 评论