MySQL数据存储
MySQL InnoDB 数据存储:系统表空间与独立表空间详解
InnoDB 存储引擎提供了两种数据存储方式 ——系统表空间和独立表空间,它们在文件管理、性能和维护方面有显著差异。理解这两种模式的特点,有助于优化数据库存储结构和性能。
表空间类型的查看与默认配置
通过以下命令可查看当前使用的表空间模式:
-- ON:独立表空间;OFF:系统表空间
show variables like '%innodb_file_per_table%';
- MySQL 5.5 及之前:默认使用系统表空间。
- MySQL 5.6 及之后:默认使用独立表空间(更灵活,推荐生产环境使用)。
系统表空间(共享表空间)
系统表空间是一种共享存储模式,多个表的数据和索引共用一个或多个文件,默认文件名为 ibdata1、ibdata2 等。
核心配置
-- 查看系统表空间文件路径和大小配置
show variables like 'innodb_data%';
-- 输出示例:
-- innodb_data_file_path = ibdata1:12M:autoextend(初始12M,自动扩展)
-- innodb_data_home_dir = (默认数据目录,如 /var/lib/mysql)
-- 查看自动扩展增量(默认64M)
show variables like 'innodb_autoextend_increment';