1

在我的 wordpress 多站点中,在主网站中,当我尝试更新任何帖子或小部件时出现错误。当我将网站置于调试模式时,我发现许多错误:表已满,查询 UPDATE 或 INSERT 为:

  • WordPress数据库错误表'wp_1_options'已满查询更新
  • WordPress数据库错误表'wp_1_comments'已满查询INSERT
  • ETC

如果我检查这些错误表的内容,我认为我的数据库的每个表似乎限制只包含 3MB。

我为我的 wordpress 网站使用了一个数据库插件来检查数据库,我发现它们中的大多数都有 3MB 的“开销”大小。

上述信息的确切问题是什么?我们怎么能解决它?头顶是什么意思?我们如何解决这个开销问题?

4

2 回答 2

1

问题的解决方式与问题中所述相同:ERROR 1114 (HY000): The table is full

我要求我的主人改变:

innodb_data_file_path = ibdata1:10M:autoextend:max:512M

它已经解决了我的问题。

于 2012-07-03T09:04:35.527 回答
0

因此,正如我最近发现的那样,您的问题实际上在 MySQL 中是不可能的。游标与其余声明一起在存储过程的顶部声明,并且 MySQL 的解析引擎无法管理条件变量声明,它是全部还是没有。

我想出了以下技巧,可以让我解决这个问题,即我只是分别声明了我需要的每个游标。我只有两个,所以这并不疯狂:

DECLARE curs CURSOR FOR SELECT DISTINCT(user_id), applied_at FROM application WHERE job_id = JOB_ID_INPUT ORDER BY applied_at DESC;
DECLARE curs_all CURSOR FOR SELECT user_id, applied_at, job_id FROM application WHERE 1 ORDER BY applied_at DESC;

我建议,如果您计划有数百个有条件创建的游标,那么您可能希望找到另一种方法来在 MySQL 中完成您的任务,或者如果您不能找到不同的工具。祝你好运。

查看更多详细信息: http: //dev.mysql.com/doc/refman/5.0/en/cursors.html

于 2013-06-20T17:14:18.250 回答