如何解决超过共享主机中的mysql中的'max_questions'资源?

时间:2015-10-09 20:19:53

标签: php mysql

我有基于php / mysqli的网站在共享主机(fatcow)上运行。目前我正面临着#1226的问题 - 用户'testdb'超出了'max_questions'资源(当前值:75000)。

网站上有很多带连接的复杂查询。我无法访问或无法在Web服务器上执行任何操作。解决方案是在我的应用程序上解决问题。

请告诉我一个解决问题的最佳解决方案。

3 个答案:

答案 0 :(得分:1)

phpmyadmin控制台尝试此操作(选择数据库并转到SQL部分):

SET @MAX_QUESTIONS=0; // This will set unlimited.
FLUSH PRIVILEGES;

或者,你也可以这样做:

UPDATE user SET max_questions = 0 WHERE user = 'you username or root';
FLUSH PRIVILEGES;

如果您在privileges上收到错误,请询问您的提供商/管理员。

答案 1 :(得分:0)

我在WordPress网站上遇到了类似的问题。它托管在共享主机上。主机将每个用户的连接数限制为每小时75000。以下代码使我能够在调试任何可能生成过多查询的插件时保持网站正常运行。

我在wp-config文件中使用相同的密码创建了4个用户。下面的代码使用PHP switch语句每15分钟更改一次数据库用户名。

<code>

$count = date("i");

switch (true) {
    case $count <= 15:
        $user = 'mainuser';
        break;

    case $count <= 30:
        $user = 'mainuserx';
        break;

    case $count <= 45:
        $user = 'mainusery';
        break;

    default:
        $user = 'mainuserz';
        break;
}

define('DB_USER', "$user");

答案 2 :(得分:0)

解决此问题的简便方法:

SyntaxError: SyntaxError: JSON Parse error: Unexpected identifier "waiting"

要解决此问题,您必须等待1个小时,然后再运行这些命令中的任何一个。.由于问题是,每个小时的最大问题数设置为一定数量的请求。如果您尝试在1小时之前运行这些命令,则这些命令将不起作用。因此,请等待1个小时。

已经过了1个小时,然后在终端中按准确的顺序运行以下命令:

User 'root' has exceeded the 'max_questions' resource (current value: 100)

(如果root max问题说“ 0”,那么您已将其修复。现在您已完成)