做了个垃圾采集站,随着数据量的增多,30W+的时候慢查询开始出现SQL_CALC_FOUND_ROWS
2 c2 \4 s3 @9 T/ Y$ u2 h1 C8 |, d' |6 l+ B3 s) w& p' ? q3 d# K
搜了一下优化方式,初步发现有两种方式:
+ o# ~: `8 o" `. ~% `1 m: M c) D, c8 `# T% @7 w. I8 v& c
https://aihongxin.com/1045.html
+ X; F* f5 s, @" _* y0 |. f/ R; @! a6 y4 l6 g% M: e
和5 ^$ r5 u% w% ~# C( q s
. R& ~& i4 P3 o. J1 n- ]( m2 d
https://www.banzhuti.com/sql-cal ... y-optimization.html
" s" ~$ p5 t# \* n/ t, m- D8 m0 _$ t3 ?4 H
都是修改WordPress的主题文件夹的functions.php文件! O: \6 [4 i2 j! R* `# ^/ n
) S- w. Z# }/ Q, @5 Q
另外还有一个方式是把文件:wp-includes/query.php里的
* j: K# h, K, m- p+ l" k# W$this->max_num_pages = ceil( $this->found_posts / $q['posts_per_page'] );
% x$ Y8 x0 e5 U- Y W+ a改为
, z& ?$ H4 u/ D6 G! D: O$this->max_num_pages = 0;
) H) K9 }3 C1 F* f, o1 t. k' h- m4 k5 i/ o5 Q0 @: a @
好像方式3也是用于处理SQL_CALC_FOUND_ROWS的?
( }1 U5 R! i! G8 B- L- I X% z& u* q0 V6 I
因为基本不懂代码,麻烦哪位懂的大佬帮看一下上述三种方法的利弊?谢谢了。
: d' B# F- ~9 S, Y { |