1114 (HY000): 表已满

本教程将介绍1114 (HY000): 表已满的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

1114 (HY000): 表已满 教程 第1张

问题描述

我正在尝试通过简单的查询向 InnoDB 表添加一行:

INSERT INTO zip_codes (zip_code, city) VALUES ('90210', 'Beverly Hills');

但是当我尝试这个查询时,我得到以下信息:

ERROR 1114 (HY000): zip_codes 表已满

做一个

SELECT COUNT(*) FROM zip_codes

给了我 188,959 行,考虑到我在同一个数据库中有另一个包含 810,635 行的表,这似乎不算太多.

我对 InnoDB 引擎 相当缺乏经验,并且从未遇到过 MyISAM 的这个问题.这里有哪些潜在问题?

这只发生在向 zip_codes 表中添加一行时.

推荐答案

首先检查,如果您没有用完磁盘空间,然后再解决与配置相关的解决方案.

您的 my.cnf 中的 innodb_data_file_path 的最大大小似乎太小了,在这个例子中

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

你不能在所有 innodb 表中托管超过 512MB 的数据.

也许您应该使用 innodb_file_per_table 切换到 innodb-per-table 方案.

好了关于1114 (HY000): 表已满的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。