日期:2014-05-16  浏览次数:20713 次

mysql 分区
查了一下MYSQL的分区,觉得蛮新鲜的
根据下面的语句,查询了一下:
#################################

################################
# 建立range分区表
################################


CREATE TABLE IF NOT EXISTS partition_range_one (
 id INT NOT NULL,
 partition_id INT NOT NULL
 )ENGINE=MyISAM DEFAULT CHARACTER SET UTF8

 PARTITION BY RANGE (partition_id) (
  PARTITION p0 VALUES LESS THAN (10),
  PARTITION p1 VALUES LESS THAN (20),
  PARTITION p2 VALUES LESS THAN (30),
  PARTITION p3 VALUES LESS THAN MAXVALUE
  );

====================================
结果MYSQL报错了...不知道为什么,请赐教
我是在XP系统下运行的

------解决方案--------------------
SQL code

CREATE   TABLE   IF   NOT   EXISTS   partition_range_one   (
  id   INT   NOT   NULL,
  partition_id   INT   NOT   NULL,

  PARTITION   BY   RANGE   (partition_id)   (
    PARTITION   p0   VALUES   LESS   THAN   (10),
    PARTITION   p1   VALUES   LESS   THAN   (20),
    PARTITION   p2   VALUES   LESS   THAN   (30),
    PARTITION   p3   VALUES   LESS   THAN   MAXVALUE
    ) ENGINE=MyISAM   DEFAULT   CHARACTER   SET   UTF8

------解决方案--------------------
mysql版本低了。5.1的才支持分区


------解决方案--------------------
提高效率
查询时可以直接在分区中查,不需要查询全表