rocy.cao 发表于 2008-9-4 14:48:32

mysql 分区问题请教:

我的mysql 是支持分区的
mysql> show variables like '%partition%';
+-------------------+-------+
| Variable_name   | Value |
+-------------------+-------+
| have_partitioning | YES   |
+-------------------+-------+
1 row in set (0.02 sec)

我创建表的语句是这样的:
CREATE TABLE `jobstat` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`jobNo` varchar(45) DEFAULT NULL,
`clickSum` int(10) unsigned DEFAULT NULL,
`showSum` int(10) unsigned DEFAULT NULL,
`mailSum` int(10) unsigned DEFAULT NULL,
`locationid` varchar(10) DEFAULT NULL,
`logdate` char(8) DEFAULT NULL,
PRIMARY KEY (`id`)
)

partition by RANGE(id)(
        partition p0 values less than (5000000),
        partition p1 values less than (10000000),
        partition p2 values less than (15000000),
        partition p3 values less than maxvalue
);
我想每500万数据在一个分区内。先创建了4个分区。

第一个问题: 我显示表的时候,显示的信息如下:
mysql> show create table jobstat\G;
*************************** 1. row ***************************
       Table: jobstat
Create Table: CREATE TABLE `jobstat` (
`id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`jobNo` varchar(45) DEFAULT NULL,
`clickSum` int(10) unsigned DEFAULT NULL,
`showSum` int(10) unsigned DEFAULT NULL,
`mailSum` int(10) unsigned DEFAULT NULL,
`locationid` varchar(10) DEFAULT NULL,
`logdate` char(8) DEFAULT NULL,
PRIMARY KEY (`id`),
KEY `idx_jobstat_jobNo` (`jobNo`) USING BTREE,
KEY `idx_jobstat_logdate` (`logdate`),
KEY `idx_jobstat_locationid` (`locationid`),
KEY `idx_jobstat_jobNo_logdate` (`jobNo`,`logdate`) USING BTREE,
KEY `idx_jobstat_clickSum` (`clickSum`),
KEY `idx_jobstat_showSum` (`showSum`)
) ENGINE=MyISAM AUTO_INCREMENT=14581386 DEFAULT CHARSET=gbk /*!50100PARTITION BY RANGE (id) (PARTITION p0 VALUES LESS THAN (5000000) ENGINE= MyISAM, PARTITION p1 VALUES LESS THAN (10000000) ENGINE = MyISAM,PARTITION p2 VALUES LESS THAN (15000000) ENGINE = MyISAM, PARTITION p3VALUES LESS THAN MAXVALUE ENGINE = MyISAM) */
1 row in set (0.00 sec)

ERROR:
No query specified

这说明我创建分区成功了么,因为显示的语句把我创建分区的语句给 /* */起来了,所以感觉好像不大对似的。


第二个问题:
我往这个表中导入了数据,大约1500万条。
我可以知道具体的有哪些数据分别在那个分区么?
也就是我想检验我分区创建的效果实现没,我该怎么操作呢

第一次弄这个东西,很多不明白的地方,非常感谢。

kider 发表于 2008-9-4 17:36:26

这两天忙,过两天回来拜读...

rocy.cao 发表于 2008-9-5 09:31:29

内容不多啊,对于高手来说就几分钟的事情。
大哥,不是吧。那可就是下周了啊

kider 发表于 2008-9-9 20:13:07

公司组织去了趟张家界旅游才回来^_^...

以上问题最好先看看MySQL参考手册,是最全的了:
http://mysqlpub.com/forumdisplay.php?fid=18

独步古今 发表于 2008-10-16 17:58:02

首先查看建表的SQL语句中有/**/是正确的,另外,想知道某个数据在哪个分区里,你采用的是范围分区,那都已经很明确了啊。
页: [1]
查看完整版本: mysql 分区问题请教: