InnoDB“自动扩展”功能

时间:2011-01-27 10:51:28

标签: mysql database innodb

我对使用InnoDB非常困惑。 我有一个存储空间有限的服务器,我读过InnoDB表创建了10MB自动扩展的默认大小表。

我不明白“autoextend”功能。如果一个表超过10MB,MySQL会自动增加内存(10Mb + 10MB)?

那么,我可以更改任何表的默认限制吗?

例如:

  • 表1 =默认10MB;
  • 表2 =默认0.5MB;
  • 等...

有可能吗?

1 个答案:

答案 0 :(得分:3)

除非您启用innodb_file_per_table,否则实例中所有数据库的所有InnoDB数据都将存储在一组文件中(在配置文件中定义)。

当文件集没有剩余可用空间时,集合中最后一个文件的大小会增加autoextend参数指定的块,默认为8MB

InnoDB只会增加集合中的最后一个文件。

如果您使用innodb_file_per_table,则每个表都使用自己的表空间。它始终存储在一个文件中(驻留在db目录中),并且该文件以4M的块为单位增长。这不能改变。