2
我有一个大的mysql数据库和两个小磁盘上的centos,我该如何使它利用两个磁盘?跨多个磁盘传播mysql数据
我有一个大的mysql数据库和两个小磁盘上的centos,我该如何使它利用两个磁盘?跨多个磁盘传播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"
);
@Fahim Parkar:
如果你用完了你的最后一个分区的磁盘空间,你可以用下面的语句把它分解我不知道它是如何将概念上工作,在/ var/lib中/ MySQL的含所有的数据文件,不知道如何配置它使数据存储在多个文件夹中 – user881480