
mysql
hw120219
这个作者很懒,什么都没留下…
展开
-
索引总结
如果是等值查询,那么哈希索引明显有绝对优势,因为只需要经过一次算法即可找到相应的键值;当然了,这个前提是,键值都是唯一的。如果键值不是唯一的,就需要先找到该键所在位置,然后再根据链表往后扫描,直到找到相应的数据;从示意图中也能看到,如果是范围查询检索,这时候哈希索引就毫无用武之地了,因为原先是有序的键值,经过哈希算法后,有可能变成不连续的了,就没办法再利用索引完成范围查询检索;同理,哈希索引也没办法原创 2017-08-18 10:58:31 · 246 阅读 · 0 评论 -
深入剖析mysql原理
存储引擎是什么?MySQL中的数据用各种不同的技术存储在文件(或者内存)中。这些技术中的每一种技术都使用不同的存储机制、索引技巧、锁定水平并且最终提供广泛的不同的功能和能力。通过选择不同的技术,你能够获得额外的速度或者功能,从而改善你的应用的整体功能。例如,如果你在研究大量的临时数据,你也许需要使用内存存储引擎。内存存储引擎能够在内存中存储所有的表格数据。又或者,你也许需要一个支持事务处理的数据库(原创 2017-08-09 19:18:40 · 355 阅读 · 0 评论 -
数据库隔离级别及原理
数据库的隔离级别是通过共享锁和排他锁实现的。锁又可以分为表锁,页锁,行锁 数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读、不可重复读、幻读这几类问题。 脏读:读到的不是最新的数据 不可重复读:读到是是最新的数据,但是一个事务中如果多次读取,可能每次读到...原创 2019-07-30 17:21:46 · 1863 阅读 · 0 评论 -
mysql 锁机制与原理
lock 与 latch latch 一般称为 闩锁(轻量级的锁),因为其要求锁定的时间必须非常短 latch 可以分为 mutex(互斥量)和 rwlock(读写锁) 目的:保证并发线程操作临届资源的正确性 通常没有死锁检测的机制 lock 的对象是事务,用来锁定的是数据库中的对象,如表、页、行 一般 lock 的对象仅在事务 commit 或 rollback 后进行释放(不同事务隔离级别可能...原创 2019-07-22 21:52:02 · 497 阅读 · 0 评论