[转发]帝国cms伪静态7000w 400G数据,数据库架构及索引优化分享

一.架构
1.大栏目独立表
2.数据表竖向2G自动分表
二.数据库类
InnoDB、MyISAM混用
文章主表InnoDB引擎(所有查询读取基本全查询的此表InnoDB可有效避免锁表)
数据表MyISAM引擎竖向每2G自动分表方便维护管理
三.索引类
因为列表和查询类基本都是倒序排列,数据库尽量选择mysql8+ mariadb10.8+(支持倒序索引)8和10.8以下的数据库不支持倒序索引倒序排列很慢。。
建立相关查询字段复合索引并删除相关原单列索引
标签调用应sql尽量极简尽简。。尽量不使用花里胡哨的附加查询标签除非你必须需要。。。
针对灵动栏目调用

ALTER TABLE `phome_ecms_ask` ADD INDEX `istop_desc` (classid,istop desc,newstime desc);
ALTER TABLE `phome_ecms_ask` ADD INDEX `istop` (istop desc,newstime desc);

原classid字段索引删除不要了走复合索引更快
因灵动查询有N种组合方式,如需别的查询根据自己查询语句优化即可...尽量全站只保留3种以下的查询方式索引太多了也不行
如有mysqler可继续跟进优化.....放弃静态吧。。动态让你happy...

鉴于有些傻鸟开着py抓取上一篇..下一篇爬取内容建议注释掉上一页的查询语句。。。上一篇用的id倒序会导致全表查询数据量大会给你卡死数据库...最好方法是复制一个字段单独装倒序id。。但是需要改程序结构

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值