首页 > 代码库 > Innodb表独立空间

Innodb表独立空间

Innodb表独立空间

 

需求:MYSQL innodb 每张表一个数据文件

 

默认情况下,innodb引擎的所有表都存储在一个叫ibdata1的文件中,当数据量很大的时候,这个文件超级大,而且由于磁盘碎片造成很大的性能影响。但是我们可以让每张表一个ibdata文件,具体做法是在mysql配置文件中加入:

innodb_file_per_table=1

 

这样就修改了InnoDB为独立表空间模式,每个数据库的每个表都会生成一个数据空间。重启mysql服务即生效.

 

查看是否开启:

mysql> show variables like‘%per_table%’;

 

关闭独享表空间

innodb_file_per_table=0关闭独立的表空间

mysql> show variables like‘%per_table%’;

 

独立表空间优点:

1  每个表都有自已独立的表空间。

2  每个表的数据和索引都会存在自已的表空间中。

3  可以实现单表在不同的数据库中移动。

4  对于使用独立表空间的表,不管怎么删除,表空间的碎片不会太严重的影响性能,而且还有机会处理。

 

小结:

共享表空间在Insert操作上少有优势。其它都没独立表空间表现好。当启用独立表空间时,请合理调整一下:innodb_open_files


本文出自 “网络技术天地” 博客,请务必保留此出处http://1364952.blog.51cto.com/1354952/1954667

Innodb表独立空间