InnoDB “The Table is Full” error

2020-06-12 05:01发布

I have a MySQL InnoDB table on a RedHat Enterprise Linux 4 server, and after trying to import a database previously backed up using mysqldump I got a "the table is full" error.

The table currently has 463,062 rows in it, and the ibdata1 file on disk is currently 3.37Gb. A quick "SHOW VARIABLES;" shows that the innodb_data_file_path is set to ibdata1:10M:autoextend, and the filesystem is ext3, so I'd expect it to have plenty of room left to grow.

Any ideas how I can go about establishing exactly what the problem is?

标签: mysql innodb
3条回答
一纸荒年 Trace。
2楼-- · 2020-06-12 05:35

If I was you I would try actually setting the last part of the innodb_data_file_path command i.e. innodb_data_file_path ibdata1:10M:autoextend:max:3999M

Not specifying the large number can sometimes have it default to unpredicatable numbers.

Not to be too obvious but ensure you restart after making the config change!

查看更多
闹够了就滚
3楼-- · 2020-06-12 05:37

Check that the disk the InnoDB data file is stored on isn't full

查看更多
Melony?
4楼-- · 2020-06-12 06:02

We fixed the exact same issue on CentOS on AWS. Contray to what most of the posts indicate, this can be fixed by adding right below the [mysqld] section in your my.cnf file:

innodb_data_file_path=ibdata1:10G:autoextend
查看更多
登录 后发表回答