![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL
文章平均质量分 85
qq_16399457
这个作者很懒,什么都没留下…
展开
-
Mysql优化——建表优化和查询优化
建表前选择合适的引擎 常见的引擎有MyISAM、Innodb、MEMORY、MERGEE、CSV。 一般在MyISAM和InnoDB之间选择。 理由:MyISAM和InnoDB使用的最多,社区环境最好,利于以后的维护。 区别: MyISAM读快,写慢。不直吹事务、外键,支持全文索引,表锁。 InnoDB读慢,写快。支持事务、外键,支持行锁,适合高并发。默认引擎。(r如无特殊需求,强烈建议选择他,万一哪天需要用到事务呢!!!) 建表优化 为每个数据表建主键 尽量把字段设置为NOT NULL,null值很难查原创 2021-05-21 15:10:49 · 141 阅读 · 0 评论 -
数据库水平扩展——分表分库
注意点:无论按哪个纬度分表,订单号需要全局唯一,且需要包含库id和表id,以便定位。或者建一张订单号与分表纬度之间的关联表,并加载到缓存中。 此处以餐饮系统为例:按shopid分表 水平分表分库的方式一般有三种: 按范围分表,比如:shopid在1到1w的放在0表,shopid在1w1到2w的放在表1 优点:易于扩展 缺点:数据分散不均匀,容易出现单表瓶颈 hash分表(硬hash),比如:...原创 2020-01-13 00:14:04 · 346 阅读 · 0 评论 -
MySQL之SQL优化——explain
我们用explain检查sql语句的性能,触发索引的实际情况 explain显示的内容如下 mysql> explain SELECT * from statuses where user_id=1 ; +----+-------------+----------+------------+------+------------------------+-------------------...原创 2020-01-08 16:00:13 · 111 阅读 · 0 评论