欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

mysql 共享表空间存储_MySQL InnoDB共享表空间

发布时间:2024/9/27 42 豆豆
生活随笔 收集整理的这篇文章主要介绍了 mysql 共享表空间存储_MySQL InnoDB共享表空间 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

简介ibdata1

ibdata1文件是InnoDB存储引擎的共享表空间文件,存放位置my.ini 中的 datadir="D:\phpStudy\MySQL\data",目录下。

查看innode_file_per_table 参数的状态

show variables like '%per_table';

表空间

Innodb存储引擎可将所有数据存放于ibdata*的共享表空间,也可将每张表存放于独立的.ibd文件的独立表空间。

共享表空间 :  某一个数据库的所有的表数据,索引文件全部放在一个文件中,默认这个共享表空间的文件路径在data目录下。 默认的文件名为:ibdata1  初始化为10M。

独立表空间 : 每一个表都将会生成以独立的文件方式来进行存储,每一个表都有一个.frm表描述文件,还有一个.ibd文件。 其中这个文件包括了单独一个表的数据内容以及索引内容,默认情况下它的存储位置也是在表的位置之中。

共享表空间转化为独立表空间:

1.先备份数据,然后修改配置文件my.cnf中的参数 innodb_file_per_table 参数为1/on开启独立表空间,重启服务后将备份数据导入即可。

2.修改配置文件my.cnf中的参数 innodb_file_per_table 参数为1/on,重启服务后将需要修改的所有innodb表都执行一遍:alter table table_name engine=innodb;会将innodb表从系统共享表空间移动到独立的.ibd文件。

使用第二种方式修改后,原来库中的表中的数据会继续存放于ibdata1中,新建的表才会使用独立表空间

总结

以上是生活随笔为你收集整理的mysql 共享表空间存储_MySQL InnoDB共享表空间的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。