mysql优化之sql优化

sql优化的基本思路是优化索引的使用,实践证明查询只要是正确使用了索引,查询效率就会快很多
阅读全文

mysql分表

1. 怎么分1. 水平拆分 1. Id取余 2. 按时间 3. 按类型2. 垂直拆分 1. 根据策略把字段拆出来独立一张表(策略:大字段、访问频率、更新频率、相关性) 2. 水平分表遇到的问题:1. 跨表直接连接查询无法进行2. 我们需要统计数据的时候3. 如果数据持续增长,达到现有分表的瓶颈,需要增加分表,此时会出现数据重新排列的情况 解决方案建议:1. 第1,2点可以通过增加汇总
阅读全文

mysql中innodb事务:锁级别、4个基本特性、行锁

1. 锁级别(解决问题) 1. read uncommited(解决丢失更新:当2个或多个事务同时选择同一行,最初事务修改的值被后面事务修改的值覆盖) 2. read conmmited(解决脏读:一个事务正在访问数据并修改数据,而修改还没提交到数据库中,另外的事务读取了这个数据,并使用了数据) 3. repeatable read(不可重复读:当一个事务读取数据后的某个时间,再次读取这个数据,确发现和以前读取的数据不一致) 4. Serializable (解决焕读:一
阅读全文

mysql索引优化

mysql用的较多的索引结构是b+树 ,它的特性是:1、B+树将所有的查找结果放在叶子节点中,这也就意味着查找B+树,就必须到叶子节点才能返回结果;2、B+树每一个节点的关键字个数和子树指针个数相同;3、B+树的非叶子节点的每一个关键字对应一个指针,而关键字则是子树的最大,或者最小值;4、所有非叶子节点都可以看做是key的索引部分 怎么建索引,索引设计原则1. 对查询频次高,数据量大的2. 索引字段的选择,经常在where子句中的3. 使用唯一索
阅读全文

mysql实现随机查询

参考文章:https://www.jb51.net/article/48801.htm
阅读全文