高并发大流量专题---10、MySQL数据库层的优化
一、总结
一句话总结:
mysql先考虑做分布式缓存,过了缓存后就做mysql数据库层面的优化
1、mysql数据库层的优化的前面一层是什么?
数据库缓存:突破了数据库缓存就需要做mysql数据库层的优化
2、mysql优化方向?
数据表数据类型优化;索引优化;SQL语句的优化
存储引擎的优化
数据表结构设计的优化
数据库服务器架构的优化
3、mysql数据表的数据类型优化考虑?
合适:字段使用什么样的数据类型更合适
更快:字段使用什么样的数据类型性能更快
4、使用char还是varchar需要考虑什么?
存储字符串长度是否固定
5、使用tinyint、smallint、bigint需要考虑什么?
空间:考虑空间的问题
范围:考虑范围的问题
6、IP地址的如何存储?
可以使用整型存储IP地址:php应该有将ip转成整型的方法
7、mysql索引如何优化?
建立合适的索引
思考索引在什么场景下效率最高
8、mysql索引的创建原则?
索引不是越多越好,在合适的字段上创建合适的索引
复合索引的前缀原则
9、mysql索引的注意事项?
1、复合索引的前缀原则
2、like查询%的问题
3、or条件索引使用情况
4、字符串类型索引失效的问题:如果里面是整形,不要引号索引失效
复合索引的前缀原则
like查询%的问题
全表扫描优化
or条件索引使用情况
字符串类型索引失效的问题:如果里面是整形,不要引号索引失效