做了个垃圾采集站,随着数据量的增多,30W+的时候慢查询开始出现SQL_CALC_FOUND_ROWS
- c9 o9 k4 C! k) e; |4 k4 M, N) I5 Z- j# `* F* |2 ~' N9 e8 u
搜了一下优化方式,初步发现有两种方式:- v; g7 d. v3 c8 [
) s l) V+ ?8 i& d) w0 dhttps://aihongxin.com/1045.html& h9 D, Y: d+ r, h* t- P# ?
" h3 H, z( i/ B; Z
和
7 x/ g! R: A4 }) O9 F' c9 E, V
' h/ x9 R) ~0 G; [) Shttps://www.banzhuti.com/sql-cal ... y-optimization.html
2 g5 W5 X5 q9 C3 Z
! | j+ P% S. |都是修改WordPress的主题文件夹的functions.php文件
2 ^. ~; ]. o7 s
4 N( q% q! h3 ?* ]2 _5 Y另外还有一个方式是把文件:wp-includes/query.php里的
! f% e; W6 T2 w z+ K2 i. P3 |" x$this->max_num_pages = ceil( $this->found_posts / $q['posts_per_page'] );
: e6 y3 O9 d# S改为
* S: e% L- p- m$this->max_num_pages = 0;9 [, t, g3 ^- D$ ^# [/ | c
% e; }0 A1 z9 g3 a7 A好像方式3也是用于处理SQL_CALC_FOUND_ROWS的?" _$ r1 [. p! I3 A. q- c* v
- f; m; I7 S3 k0 J因为基本不懂代码,麻烦哪位懂的大佬帮看一下上述三种方法的利弊?谢谢了。2 G! x8 c% _/ x2 \4 B
|