默认情况下,MySQL InnoDB 将所有数据库的所有表存储在一个全局文件中。您可以通过在配置中设置 innodb_file_per_table 来更改这一点,然后为每个表创建一个数据文件。
我想知道为什么innodb_file_per_table默认情况下不启用。使用它有什么缺点吗?
当我执行 SHOW TABLE STATUS databaseName;
我在所有表中获得值为 17825792 的 Data_free 信息:
| Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time | Update_time | Check_time | Collation | Checksum | Create_options | Comment |
| ubqACL | InnoDB | 10 | Compact | 0 | 0 | 16384 | 0 | 16384 | 17825792 | 1 | 2011-08-23 17:45:48 | NULL | NULL | utf8_general_ci | NULL …Run Code Online (Sandbox Code Playgroud)