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