做了个垃圾采集站,随着数据量的增多,30W+的时候慢查询开始出现SQL_CALC_FOUND_ROWS# N+ f" c, H* r P% j% t7 g
' {! L) j- I+ I4 T, T
搜了一下优化方式,初步发现有两种方式:
+ h0 ^. p3 b* K& z$ N" `4 o( p- u" ?& h) s+ w9 ?0 p
https://aihongxin.com/1045.html
+ ]% p$ F6 y J1 g
( P2 U: e& u, E2 X ?* p和. w5 h+ k B+ U, H1 @
7 Y, t% N+ ]( \, e" uhttps://www.banzhuti.com/sql-cal ... y-optimization.html
0 f+ Y1 Y3 h3 F8 B6 h1 }& w' Y) T7 M3 \0 d, @9 z( P* P
都是修改WordPress的主题文件夹的functions.php文件
4 t% H) @- l" F$ x3 X' G4 \, t6 n0 _5 E0 j
另外还有一个方式是把文件:wp-includes/query.php里的4 [* ~) V/ j; S9 ]; y" Q
$this->max_num_pages = ceil( $this->found_posts / $q['posts_per_page'] );* A y3 i+ b7 u6 U0 h" a
改为4 U% j/ H1 k# }6 K( J1 C; _
$this->max_num_pages = 0;
. V: p4 i! ]9 R T2 K3 @7 K" Z$ L7 d5 o( m3 w
好像方式3也是用于处理SQL_CALC_FOUND_ROWS的?' H# m% T( `& P5 F# [
' k7 c( E. X: b" G3 y0 k
因为基本不懂代码,麻烦哪位懂的大佬帮看一下上述三种方法的利弊?谢谢了。- v* A% z* z& ^
|