经常有人问MySQL用MyISAM还是InnoDB面试时也总被提起 MyISAM 为早期的MySQL存储引擎 支持全文索引 表压缩 但不支持行级锁和事务 缺少崩溃恢复机制 如果使用的是早期MySQL版本可以考虑使用MyI…
标签:innodb
innodb_flush_log_at_trx_commit
1,参数解释:innodb_flush_log_at_trx_commit是将事务日志从innodb log buffer写入到redo log中 2,参数设置: 3,参数推荐设置: innodb_flush_log_a…
InnoDB实现原理
它是MySQL从5.5版本开始的默认的存储引擎,是第一份支持ACID特性的MySQL存储引擎,特点是行锁设计,支持MVCC(多版本并发控制),支持外键,提供一致性非锁定读,同时尽可能高效的利用计算机硬件资源. MVCC …
InnoDB的锁机制
笔记摘自《MYSQL技术内幕(InnoDB存储引擎)》 1 什么是锁 锁是数据库系统区别于文件系统的一个关键特性。 锁机制用于管理对共享资源的并发访问,为数据的完整性和一致性提供保证。 MyISAM引擎,其锁是表锁设计,…
关于自增id 你可能还不知道
导读:在使用MySQL建表时,我们通常会创建一个自增字段(AUTO_INCREMENT),并以此字段作为主键。本篇文章将以问答的形式讲述关于自增id的一切。 注: 本文所讲的都是基于Innodb存储引擎。 1.MySQL…
一文了解InnoDB存储引擎
从Mysql5.5版本开始,InnoDB是默认的表存储引擎。其特点是行锁设计、支持MVCC、支持外键、提供一致性非锁定读、同时被设计用来最有效的利用以及使用内存和CPU。 本文主要内容: InnoDB体系架构 Check…
MySQL/InnoDB中,乐观锁、悲观锁、共享锁、排它锁、行锁、表锁、死锁概念的理解
MySQL/InnoDB的加锁,一直是一个面试中常问的话题。例如,数据库如果有高并发请求,如何保证数据完整性?产生死锁问题如何排查并解决?我在工作过程中,也会经常用到,乐观锁,排它锁,等。于是今天就对这几个概念进行学习,…
Mysql的InnoDB索引深层次原理解析
本篇介绍下Mysql的InnoDB索引相关知识,从各种树到索引原理到存储的细节。 InnoDB是Mysql的默认存储引擎(Mysql5.5.5之前是MyISAM,文档)。本着高效学习的目的,本篇以介绍InnoDB为主,少…
mysql锁(五)分析innodb下锁之前需要知道的常识
****在innodb下,加锁之前,为什么需要先start transaction?**** innodb下锁的释放在事务提交/回滚之后,事务一旦提交/回滚之后,就会自动释放事务中的锁。 innodb情况下autocom…
InnoDB 缓冲池
InnoDB 缓冲池 InnoDB 维护一个称为缓冲池的存储区域, 用于缓存内存中的数据和索引 缓冲池的大小当然是越大越好 (为服务器上的其他进程留下足够的内存) InnoDB 已块的形式存储缓存 通过以下参数配置缓存大…
DAY5:MySQL聚簇索引
一、定义及说明 定义 聚簇索引并不是一种单独的索引类型,而是一种数据存储方式。InnoDB的聚簇索引实际上在同一个结构中保存B-Tree索引和数据行。数据行实际存储在叶子页中。术语聚簇表示数据行和相邻的键值紧凑的存储在一…
MySQL复习笔记(04):存储引擎的选择
一:几种常用存储引擎汇总表 二:如何选择 一句话:除非需要InnoDB 不具备的特性,并且没有其他办法替代,否则都应该优先考虑InnoDB;或者,不需要InnoDB的特性,并且其他的引擎更加合适当前情况,例如 多读少写,…