日期:2014-05-16  浏览次数:20452 次

解决InnoDB出现“the table is full”的问题

最近数据库数据量及访问频率比较大的两个表出现了the table xxx?is full的问题,导致无法写入数据。

查看mysql log发现错误:

InnoDB :: cannot find a free slot for an undo log

?

原因分析:由于innodb的任何操作都隱含有一個transaction,而出现问题的表由于数据量大操作频繁导致同時有太多事務,以致出现这样的错误。

?解决办法:增大配置文件里的参数innodb_log_file_size到1G 。