04 2022 档案
摘要:MyISAM不支持 事务,但它的每个操作都是原子级,而innodb支持事务 MyISAM只支持表级锁,不支持行级锁,innodb支持表级锁 MyISAM是非聚集索引,每次查询要2次,先查索引表,后查数据,而innodb是聚集索引,索引和数据放在一起 MyISAM不支持外键约束,innodb支持外键约
阅读全文
摘要:设置索引的必须是where后的字段 如果数据很少,没必要索引 尽量使用短索引 不能过度索引 有外键的数据必须索引 经常变更的字段不要制造索引 尽量扩展索引,而不是新建索引
阅读全文
摘要:先删除mysql,再更新redis。但如果redis更新失败,会出现数据不同步 先删除redis,再更新mysql。也有可能出现不同步,比如删除完redis之后,另外一个线程马上查询了,然后才删除mysql,这时候就会不同步 延时双删:先删除redis, 再更新mysql,延迟几百毫秒再删除redi
阅读全文
摘要:·先查看是否使用索引 ·如果使用了索引,查看是否能够优化索引 ·是否查了多余必要的字段,导致返回慢 ·是否数据太大到要分表分库的情况 ·是否可以提升配置,没招了
阅读全文
摘要:·按粒度划分 ·行级锁 ·表级锁 ·间隙锁 ·按逻辑划分 ·乐观锁:先试试能不能用,并不会真的加锁,而是通过版本号实现 ·悲观锁:行级锁、表级锁都是悲观锁 ·按属性划分 ·共享锁(读锁):加了读锁后其他事务只能读,不能写 ·排他锁(写锁):加了写锁后其他事务不能读也不能写
阅读全文
摘要:B树和B+树的区别 B树: ·节点有序 ·一个节点可以存储多个数据 B+树: ·兼容B树的特点 ·每个叶子节点都有指向相邻叶子节点的指针 ·非叶节点中所有的数据都在叶子节点中冗余了,并且已经排好序了
阅读全文