我正在运行一个大型的 Wordpress 多站点安装,对于每个站点,运行许多数据库查询以在相应的博客中显示信息。数据查询不是太繁重,但我经常在错误日志中看到以下内容:
PHP Fatal error: Allowed memory size of 1572864000 bytes exhausted (tried to allocate 97 bytes) in /home/********/public_html/wp-includes/wp-db.php on line 1775
当发生这种情况时,我相信被调用的页面(导致错误的页面)会停止加载,用户必须重新加载才能访问信息。我查看了每个被调用的页面,它们都自动加载,没有任何问题。
查看 wp-db.php 文件中的相关行,这是导致错误的行:
preg_match( '/^\s*(create|alter|truncate|drop)\s/i', $query ) ) {
$return_val = $this->result;
即执行数据库查询时。这里显然出了点问题,因为我尝试提高 php 资源的内存限制。有人知道我该如何识别导致此错误的原因以便修复它吗?