
MySql
数据库MySql相关
大城市里的小麻雀
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
mysql事务的隔离级别与传播行为
事务的四个特性: 原子性:一个事务中的所有操作要不都成功,要不都失败,如果其中有一个操作失败了,则会回滚到事务操作前的状态。 一致性:在事务开始之前和事务结束以后,数据库的完整性没有被破坏。这表示写入的数据必须完全符合所有的预设规则。 隔离性:数据库允许多个并发事务同时对其数据进行读写和修改的能力,隔离性可以防止多个事务并发执行时由于交叉执行而导致数据的不一致。 持久性:事务处理结束后,对数据的修改就是永久的,即便系统故障也不会丢失。 事务的隔离级别: 读未提交:一个事物读到了另外一个事务没有提交事务原创 2020-05-20 10:57:15 · 430 阅读 · 0 评论 -
InnoDB索引和MyISAM索引的区别
myisam: 当表采用myisam做存储引擎, 底层数据表由.frm 描述表结构、. MYD保存表数据、 .MYI存储表索引 。 底层是B+树作为索引结构,叶子节点data存放的是数据记录指针的地址,这种索引结构为非聚簇索引。 下图为myisam底层索引结构: innodb: 与myisam的区别是,数据文件就是索引文件,叶子节点data存放的是数据的整条记录。这种索引结构为聚簇索引。 因为InnoDB的数据文件本身要按主键聚集,所以InnoDB要求表必须有主键(MyISAM可以没有),如果我们定义了主原创 2020-05-19 17:57:12 · 846 阅读 · 0 评论 -
Mysql性能优化
数据库性能优化: 1. 为查询缓存优化查询 大多数的 MySql 服务器都开启了查询缓存。这是提高性最有效的方法之 一,当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不用操作表而直接访问缓存结果了**。 2. explain关键字优化select 查询** 使用 explain 关键字可以让你知道MySql是如何处理你的 SQL 语句的。这可...原创 2020-04-22 17:11:42 · 129 阅读 · 0 评论 -
为什么MySql使用B+树作为索引?
什么是索引? 排好序、快速查找的B+树数据结构 hash:对于普通的增删改查,仅查找一次,时间复杂度为O(1),但对于范围查找和排序查找不合适,时间复杂度会变为为O(n),而树的时间复杂度会一直保持O(log2(n)),这样更加稳定。 二叉树:每一个节点上都会有两个根节点,左节点大于右节点,但会带来一种问题:会发生左倾或者右倾的错误,无法保证平衡,由二叉树退化成链表,复杂度由O(log2(n))...原创 2020-02-24 14:43:24 · 141 阅读 · 0 评论 -
myisam与innodb的区别?
1,innodb支持主外键,支持事务,myisam不支持主外键和事务。 2,对于读操作较多的情况下,适用于myisam,myisam是表锁,在操作表时会锁住整个表,不适合高并发的情况下。innodb行锁,适用于高并发的情况下,适用于写操作多于读操作的情况下使用。 3,myisam只缓存索引,不缓存真实数据。innodb不仅缓存索引还会缓存真实数据,对内存要求较高,而且内存大小对性能有决定性影响。 ...原创 2020-02-21 12:00:07 · 176 阅读 · 0 评论