做了个垃圾采集站,随着数据量的增多,30W+的时候慢查询开始出现SQL_CALC_FOUND_ROWS
) w7 j1 N/ s; H5 }- u4 P; {4 `/ U5 ]& f7 i# U5 C
搜了一下优化方式,初步发现有两种方式:: X V2 ^" G' B. z4 K, E
, a3 b* Z% }3 K3 g8 i8 a6 ?- chttps://aihongxin.com/1045.html3 d& p5 l @, {+ u, J
3 H# q: V' K; {+ L: |* s; m
和
, a7 O0 b' Y, _1 z j# c
3 u0 e* ]7 |% Y5 |! }https://www.banzhuti.com/sql-cal ... y-optimization.html
% [+ N. b: \5 V; }5 u9 F5 r- X8 s6 K, h& {2 T* J0 g
都是修改WordPress的主题文件夹的functions.php文件
& [, p: r2 `; Z) K+ p
. U* k3 p; L! u4 b另外还有一个方式是把文件:wp-includes/query.php里的
- P/ Z6 H8 |8 R4 I8 d$this->max_num_pages = ceil( $this->found_posts / $q['posts_per_page'] );
" Z, l- u3 S( @改为
1 U/ \" {8 c# A1 I! c$this->max_num_pages = 0;4 ?0 j5 t3 q4 J1 Q
8 K& [* ~* G' U- G好像方式3也是用于处理SQL_CALC_FOUND_ROWS的?) f. F9 B$ W$ p! `* ]' F0 x" Q" v
: C' {# i+ v- K& J2 K! n( l/ b因为基本不懂代码,麻烦哪位懂的大佬帮看一下上述三种方法的利弊?谢谢了。# G- F; V) v; S' M! @6 ?2 s. u/ H
|