上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 30 下一页
摘要: 选择普通索引还是唯一索引? 对于查询过程来说: a、普通索引,查到满足条件的第一个记录后,继续查找下一个记录,知道第一个不满足条件的记录 b、唯一索引,由于索引唯一性,查到第一个满足条件的记录后,停止检索 但是,两者的性能差距微乎其微。因为InnoDB根据数据页来读写的。 对于更新过程来说: 概念: 阅读全文
posted @ 2020-01-30 19:58 lakeslove 阅读(104) 评论(0) 推荐(0) 编辑
摘要: InnoDB 的行数据有多个版本,每个数据版本有自己的 row trx_id,每个事务或者语句有自己的一致性视图。普通查询语句是一致性读,一致性读会根据 row trx_id 和一致性视图确定数据版本的可见性。对于可重复读,查询只承认在事务启动前就已经提交完成的数据;对于读提交,查询只承认在语句启动 阅读全文
posted @ 2020-01-29 20:31 lakeslove 阅读(113) 评论(0) 推荐(0) 编辑
摘要: mysql5.7出现死锁时,导致死锁的那个事务会回滚,被死锁的事务正常获取锁。 ERROR 1213 (40001): Deadlock found when trying to get lock; try restarting transaction 发起死锁检测,发现死锁后,主动回滚死锁链条中的 阅读全文
posted @ 2020-01-29 14:55 lakeslove 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 给一个表加字段,或者修改字段,或者加索引,需要扫描全表的数据。在对大表操作的时候,你肯定会特别小心,以免对线上服务造成影响。 FTWRL 前有读写的话 ,FTWRL 都会等待 读写执行完毕后才执行 FTWRL 执行的时候要刷脏页的数据到磁盘,因为要保持数据的一致性 ,理解的执行FTWRL时候是 所有 阅读全文
posted @ 2020-01-28 21:32 lakeslove 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 回表:回到主键索引树搜索的过程,称为回表 覆盖索引:某索引已经覆盖了查询需求,称为覆盖索引,例如:select ID from T where k between 3 and 5 在引擎内部使用覆盖索引在索引K上其实读了三个记录,R3~R5(对应的索引k上的记录项),但对于MySQL的Server层 阅读全文
posted @ 2020-01-28 20:08 lakeslove 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 1.索引的作用:提高数据查询效率 2.常见索引模型:哈希表、有序数组、搜索树 3.哈希表:键 - 值(key - value)。 4.哈希思路:把值放在数组里,用一个哈希函数把key换算成一个确定的位置,然后把value放在数组的这个位置 5.哈希冲突的处理办法:链表 6.哈希表适用场景:只有等值查 阅读全文
posted @ 2020-01-28 18:31 lakeslove 阅读(105) 评论(0) 推荐(0) 编辑
摘要: mysql的隔离机制是可重复读,但实际上操作效果和串行化类似, mysql执行begin后不会启动事务, 而是在执行begin之后继续执行下一个语句时,才启动的事务,在information_schma.innodb_trx中添加一条记录, commit后删除该记录。 1、务的特性:原子性、一致性、 阅读全文
posted @ 2020-01-28 16:46 lakeslove 阅读(144) 评论(0) 推荐(0) 编辑
摘要: redo log 和 bin log redo log 是innodb引擎特有,当有一条记录需要更新时,innodb先把记录写到redo log中,并更新内存,此时更新完成, 同时,innodb会在适当的时候把这个操作记录更新到磁盘中。 binlog(归档日志)是server层的日志 这两种日志有以 阅读全文
posted @ 2020-01-28 10:53 lakeslove 阅读(185) 评论(0) 推荐(0) 编辑
摘要: 01 | 基础架构:一条SQL查询语句是如何执行的? mysql执行过程中临时使用的内存是管理在连接对象里面的,这些自由会在连接断开时释放。 重置连接:mysql_reset_connection 不要使用缓存,query_cache_type设置成DEMAND,这样默认不使用查询缓存。 要使用查询 阅读全文
posted @ 2020-01-27 19:00 lakeslove 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 一共48讲,学习时间2天。 开篇词 (1讲) 开篇词 | 这一次,让我们一起来搞懂MySQL 理论指导实践:先系统性的学习原理,再实践验证。 你可以从点到线再到面,形成自己到mysql知识网络。 在使用mysql时心里有底,知道怎么选择并且明白为什么。 了解原理,才能在实践中不断创新,提升个人到价值 阅读全文
posted @ 2019-10-12 22:40 lakeslove 阅读(801) 评论(1) 推荐(0) 编辑
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 30 下一页