mysql - 为什么我的 InnoDB 表的大小限制为 600MiB?

标签 mysql innodb

我在 my.cnf 中有以下 InnoDB 配置选项:

innodb_file_per_table = 1

我正在用几百万行填充一个表,但是在插入几分钟后,MySQL 产生了以下错误:

ERROR 1114 (HY000): The table is full

.ibd 文件大小正好是 629145600 字节(是的,600*2^20)。包含 MySQL 数据的分区未满。

谁能解释一下这是怎么回事?

最佳答案

这不是 InnoDB 的限制 - 5.0 和 5.6 状态的文档:

On some older operating systems, files must be less than 2GB

无论如何,这不是您遇到的限制。合并的日志文件也可以运行高达 512 GB(对于版本 5.6,5.0 为 4GB)。似乎还有其他因素限制了您的文件:虚拟化系统、分区(如 Rahul 提到的)等。

关于mysql - 为什么我的 InnoDB 表的大小限制为 600MiB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20020241/

相关文章:

mysql - 更新 mysql 表行时,current_timestamp 也会更新

Mysql复杂查询

mysql - 错误代码 : 2008 MySQL client ran out of memory

mysqld 服务无法启动

mysql - 如何在 MySQL 中查找生成的列定义

mysql - 将查询存储在bash中的数组中

mysql - 如何优化我的查询?

MySQL 已经不再支持大型查询

php - mysqli_rollback($ conn)不起作用

mysql - 在这种情况下,MyISAM 比 mysql 中的 InnoDB 快得多