php – 为什么WordPress会创建一个巨大的error_log文件?

我在我的共享Hostgator服务器上托管了一个小型Wordpress网站.我没注意它,因为网站工作正常,直到最近我注意到根文件夹中有一个~40GB的错误日志文件.我无法打开文件,因此我将其删除并等待文件再次显示.几秒钟后,文件再次出现在这条线内:

[07-Nov-2016 04:26:22] WordPress database error DELETE command denied to user ‘HIDDEN_DATABASE_NAME’@’localhost’ for table ‘sv_options’ for query DELETE FROM sv_options WHERE option_name = ‘_transient_doing_cron’ made by delete_transient, delete_option

我在phpMyAdmin中运行修复和优化,但这行仍然大约每2分钟添加到文件中.我该如何找到导致此错误的原因?我不是专家,但我可以找到cPanel的方法.

最佳答案 从错误看来,尝试执行DELETE的
mysql用户似乎没有权限这样做.您需要做的是授予此用户权限,例如:

grant all privileges on mydb.* to myuser@'%' identified by 'mypasswd';
grant all privileges on mydb.* to myuser@localhost identified by 'mypasswd';
FLUSH PRIVILEGES;

这应该会停止向您的日志添加错误.有关MySQL grant and privileges的更多参考资料

您可以使用以下sql在phpmyadmin中查看用户的所有权限

show grants for myuser@'localhost';

注意:上述语句将为一个用户提供所有权限,从安全角度来看并不是一个好主意.由于错误是关于DELETE,您只能向用户提供删除权限(或者如果需要也可以选择,更新,插入)

GRANT DELETE ON mydb.* to myuser@'%' identified by 'mypasswd';
点赞