我安装了MariaDB10.2.10,启用了innodb_file_per_table
选项。
然后用Innodb
引擎创建表,并将1M行插入其中。
现在我查找和本地(..data/mydbname/table_name.ibd
)文件是增长,但增长系统ibdata1
文件也。为什么?我预计由于启用了innodb_file_per_table
,应该只增长本地.ibd
,而不是ibdata1
。
为什么ibdata1
的规模也在增长?我误解了什么?
发布于 2017-11-06 17:33:01
许多操作暂时使用ibdata1
。给定表的实际数据将完全位于.ibd
文件中。
即使在ibdata1文件中的所有表中,至少都有几十MB,这是相当正常的。
你有下面的案子吗?
innodb_file_per_table=OFF
table1
--这将进入ibdata1
innodb_file_per_table=ON
table2
--这将进入table2.ibd
table1
中--这仍将进入ibdata1
将现有表移动到ibd
的方法是打开,然后执行
ALTER TABLE table1 ENGINE=InnoDB;
如果这不能解释您的情况,请注意(1)在任何表上正在执行的操作,以及(2) ibdata1的大小。如果它再次生长,(1)可能会给我们提供更多的线索。
注意,特别是涉及大表的任何操作。
https://dba.stackexchange.com/questions/190204
复制相似问题