高并发解决方案---10.mysq数据库优化

优化方向

 

数据表数据类型优化

字段使用什么样的数据类型更合适

字段使用什么样的数据类型性能更快

tinyint(0-255)、smallint(几百几千)、bigint(非常达的数)

考虑空间的问题,考虑范围的问题,没有负数要加上无符号

 

char、varchar

存储字符串长度是否固定

 

enum

特定、固定的分类可以使用enum存储效率更快

 

IP地址的存储

使用整形存储;使用ip2long转换成整形,取出的时候使用long2ip转换成字符串的ip

 

索引优化

建立合适的索引

索引在什么场景下效率更高

 

索引创建原则

索引不是越多越好,在合适的字段上创建合适的索引(在where的列上创建索引)

复合索引的前缀原则

 

索引创建注意事项

复合索引的前缀原则

like查询%的问题(%在前like字段的索引会失效)

全表扫描的优化

or条件索引使用情况(or前面的字段有索引后面的没有则索引失效)

字符串类型索引失效的问题(字符串中存的是个整型,在查询的时候用整型不加引号索引会失效)

 

sql语句优化

优化查询过程中的数据访问

使用limit

返回列不用*

 

优化长难的查询语句

变复杂为简单

切分查询(查询很多的数据拆分查询减少数据库的压力)

 

优化特定类型的查询语句

优化count()(没有where条件的count时最快的)

优化关联语句(针对)

优化子查询(尽量不使用子查询)

优化Group by和distinct

优化limit和union

 

存储引擎优化

尽量使用Innodb引擎

 

数据表结构设计的优化

分区操作

分裤分表

 

数据库服务器架构的优化

主从复制

读写分离

双主热备

负载均衡

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值