3.1版本的
由于版本兼容性等各方面的原因,实际上dedecms的索引有点混乱,如果索引设置得适合,影响dedecmsHTML生成速度的,主要是获得没有按默认按排序的文章列表的时候,由于要重新排序,数据量大时速度会很不理想,可以通过下面几个步骤轻松
优化:
1、进入 phpmyadmin ,把 dedecms 站点 dede_archives 除了 ID 主键的索引外的索引删除;
2、用SQL创建如下索引:
ALTER TABLE `dede_archives` ADD INDEX `click` (`click`);
ALTER TABLE `dede_archives` ADD INDEX `typeid` (`typeid`);
ALTER TABLE `dede_archives` ADD INDEX `arcrank` (`arcrank`);
ALTER TABLE `dede_archives` ADD INDEX `sortrank` (`sortrank`);
ALTER TABLE `dede_archives` ADD INDEX `senddate` (`senddate`);
ALTER TABLE `dede_archives` ADD INDEX `pubdate` (`pubdate`);
ALTER TABLE `dede_archives` ADD INDEX `litpic` (`litpic`);
ALTER TABLE `dede_archives` ADD INDEX `typeid2` (`typeid2`);
在数据量为1W-10W左右的区间,经过这样的
优化后,如果内容页没有相关文章的标记,生成速度会快三至五倍
如果有相关文章标记,也会快两至三倍
2.1版本的
ALTER TABLE `dede_art` CHANGE `msg` `msg` VARCHAR( 250 ) NOT NULL;
ALTER TABLE `dede_art` CHANGE `picname` `picname` VARCHAR( 100 ) NOT NULL;
ALTER TABLE `dede_art` ADD INDEX ( `typeid` , `click` ) ;
ALTER TABLE `dede_art` ADD INDEX ( `isdd` , `redtitle` , `ismake` , `rank` , `title` , `writer` , `source` , `stime` , `userid` , `spec` , `dtime` , `memberID` ) ;
ALTER TABLE `dede_art` ADD INDEX ( `msg` , `likeid` ) ;