表在文件系统中的表示
发布时间:2023-06-29 11:28:29 所属栏目:MySql教程 来源:
导读:表中数据和索引
① 系统表空间(system tablespace)
默认情况下,InnoDB会在数据目录下创建一个名为ibdata1、大小为12M的文件,这个文件就是对应的系统表空间在文件系统上的表示。怎么才 12 M?注意这个文件是
① 系统表空间(system tablespace)
默认情况下,InnoDB会在数据目录下创建一个名为ibdata1、大小为12M的文件,这个文件就是对应的系统表空间在文件系统上的表示。怎么才 12 M?注意这个文件是
表中数据和索引 ① 系统表空间(system tablespace) 默认情况下,InnoDB会在数据目录下创建一个名为ibdata1、大小为12M的文件,这个文件就是对应的系统表空间在文件系统上的表示。怎么才 12 M?注意这个文件是自扩展文件,当不够用的时候它会自己增加文件大小。 当然,如果你想让系统表空间对应文件系统上多个实际文件,或者仅仅觉得原来的ibdata1这个文件名难听,那可以在MySQL启动时配置对应的文件路径以及它们的大小,比如我们这样修改一下my.cnf 配置 ② 独立表空间(file-per-table tablespace) [root@atguigu01 mysql]# cd ./temp [root@atguigu01 temp]# ll 总用量 1080 -rw-r-----. 1 mysql mysql 131072 7 月 29 23 :10 countries.ibd -rw-r-----. 1 mysql mysql 163840 7 月 29 23 :10 departments.ibd -rw-r-----. 1 mysql mysql 196608 7 月 29 23 :10 employees.ibd -rw-r-----. 1 mysql mysql 114688 7 月 29 23 :10 job_grades.ibd -rw-r-----. 1 mysql mysql 163840 7 月 29 23 :10 job_history.ibd -rw-r-----. 1 mysql mysql 131072 7 月 29 23 :10 jobs.ibd -rw-r-----. 1 mysql mysql 147456 7 月 29 23 :10 locations.ibd -rw-r-----. 1 mysql mysql 131072 7 月 29 23 :10 regions.ibd 表名.frm mysql> USE atguigu; Database changed mysql> CREATE TABLE test ( -> c1 INT -> ); Query OK, 0 rows affected (0.03 sec) [server] innodb_data_file_path=data1:512M;data2:512M:autoextend 在MySQL5.6.6以及之后的版本中,InnoDB并不会默认的把各个表的数据存储到系统表空间中,而是为每一个表建立一个独立表空间,也就是说我们创建了多少个表,就有多少个独立表空间。 比如:我们使用了独立表空间去存储atguigu数据库下的test表的话,那么在该表所在数据库对应的atguigu目录下会为test表创建这两个文件: 其中test.ibd文件就用来存储test表中的数据和索引。 ③ 其他类型的表空间 随着MySQL的发展,除了上述两种老牌表空间之外,现在还新提出了一些不同类型的表空间,比如通用表空间(general tablespace)、临时表空间(temporary tablespace)等。 (编辑:汽车网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
推荐文章
站长推荐