MySQL独立表空间的优缺点


  本文标签:MySQL独立表空间

  MySQL独立表空间相信大家都有一些了解,下面就为您分析MySQL独立表空间的优缺点,希望可以让您对MySQL独立表空间有更多的了解  。

  独立表空间:

  在配置文件(my.cnf)中设置: innodb_file_per_table

  优点:

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

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

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

  4.空间可以回收(除drop table操作处,表空不能自已回收)

  a) Drop table操作自动回收表空间,如果对于统计分析或是日值表,删除大量数据后可以通过:alter table TableName engine=innodb;回缩不用的空间  。

  b)对于使innodb-plugin的Innodb使用turncate table也会使空间收缩  。

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

  缺点:

  单表增加过大,如超过100个G  。

  对于单表增长过大的问题,如果使用共享表空间可以把文件分开,但有同样有一个问题,如果访问的范围过大同样会访问多个文件,一样会比较慢  。对于独立表空间也有一个解决办法是:使用分区表,也可以把那个大的表空间移动到别的空间上然后做一个连接  。其实从性能上出发,当一个表超过100个G有可能响应也是较慢了,对于独立表空间还容易发现问题早做处理  。