为了账号安全,请及时绑定邮箱和手机立即绑定

简单php网站的mysql优化小结

标签:
PHP

Mysql优化——前段

1.表结构

(a)主键——尽可能使用长度短、占用内存小、整形的主键

tinyint27-128到127

smallint215-32768到32767

mediumint223-8388608到8388607

int231

bigint263

(b)外键——对于批量可靠数据的插入建议去掉外键

(c)索引——在适当的表适当的列创建适当数量的适当索引,在查询优先和更新优先之间做平衡

适合添加索引的情况:在经常需要搜索的列上添加索引可以加快搜索的速度

在作为主键的列上强制该列的唯一性和组织表中数据的排列结构

在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的

在经常使用排序的列上创建索引

在经常使用where子句中的列上面创建索引

不适合添加索引的情况:对于查询中使用较少的列不加索引

对于很少数据值得列不加索引

对于定义text,image,bit的列不加索引

当修改性能远远大于检索性能是不加联合索引

联合索引:在特定的查询里联合索引的效果大于单一索引

索引长度:对于varchar,char用列的一部分创建索引

(d)使用非事务表——myisam 查询速度远远优于innodb


2.表字段

(a)优先使用enum、tinyint、时间类型,时间戳、ip用int存储。

(b)尽量缩短字段的长度

(c)优先使用notnull ,默认空字符或者特殊字符。

3.脚本程序

(a)不使用like,join 等高耗的sql,

(b)where子句尽量少字段,优先使用有索引的列

(c)查询字段尽量少,不使用*





点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消