
MySQL
文章平均质量分 88
小小书童DH
博主很懒,随便写写
展开
-
MySql:锁
1. 意向锁(Intention Locks)InnoDB支持多粒度锁(multiple granularity locking),它允许行级锁与表级锁共存,实际应用中,InnoDB使用的是意向锁。意向锁是指: 未来的某个时刻,事务可能要加共享/排它锁了,先提前声明一个意向。意向锁有这样一些特点:(1)首先,意向锁,是一个表级别的锁(table-level locking);(2)意向锁分为:意向共享锁(intention shared lock, IS),它预示着,事务有意向对表中的某些行.原创 2021-08-24 15:55:31 · 183 阅读 · 0 评论 -
MySql篇:性能
1. 大表数据查询,怎么优化优化shema、sql语句+索引;第二加缓存,memcached, redis;主从复制,读写分离;垂直拆分,根据你模块的耦合度,将一个大的系统分为多个小的系统,也就是分布式系统;水平切分,针对数据量大的表,这一步最麻烦,最能考验技术水平,要选择一个合理的sharding key, 为了有好的查询效率,表结构也要改动,做一定的冗余,应用也要改,sql中尽量带sharding key,将数据定位到限定的表上去查,而不是扫描全部的表;2. 超大分页怎么处理?数据库层原创 2021-08-23 16:20:11 · 167 阅读 · 0 评论 -
MySql篇:sql技巧
1. SQL的执行顺序from ->on -> join -> where ->group by -> select -> having ->order by -> distinct ->limit on: 笛卡儿积前的筛选join:表链接,遵循的算法是笛卡儿积where:形成临时表group by:临时表切分成若干临时表select:(1)当没有GROUP BY时,SELECT 会根据后面的字段名称对内存中的一张临时表整列读取。(2原创 2021-08-05 10:22:25 · 162 阅读 · 0 评论