在多个磁盘上传播mysql数据

我有一个大的mysql数据库和两个小磁盘上的centos,我怎么让它利用两个磁盘?

Solutions Collecting From Web of "在多个磁盘上传播mysql数据"

您可以将表分区到多个驱动器。 看看官方的手册,其中涵盖了这个问题的深入。

http://dev.mysql.com/doc/refman/5.5/en/partitioning.html

以下是将现有表分区到多个驱动器的示例:

ALTER TABLE mytable PARTITION BY RANGE (mycolumn)( PARTITION p01 VALUES Less Than (10000) DATA DIRECTORY = "/mnt/disk1" INDEX DIRECTORY = "/mnt/disk1", PARTITION p02 VALUES Less Than (20000) DATA DIRECTORY = "/mnt/disk2" INDEX DIRECTORY = "/mnt/disk2", PARTITION p03 VALUES Less Than MAXVALUE DATA DIRECTORY = "/mnt/disk3" INDEX DIRECTORY = "/mnt/disk3" ); 

请注意,这需要NO_DIR_IN_CREATE关闭。 它似乎并没有在Windows中工作,它似乎并没有与InnoDB的工作。

如果在最后一个分区上的磁盘空间不足,可以使用以下语句分割它:

 ALTER TABLE mytable REORGANIZE PARTITION p03 INTO ( PARTITION p03 VALUES Less Than (30000) DATA DIRECTORY = "/mnt/disk3" INDEX DIRECTORY = "/mnt/disk3", PARTITION p04 VALUES Less Than MAXVALUE DATA DIRECTORY = "/mnt/disk4" INDEX DIRECTORY = "/mnt/disk4" );