MariaDB社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3767|回复: 6
打印 上一主题 下一主题

mysql 分区问题请教:

[复制链接]
跳转到指定楼层
1#
发表于 2008-9-4 14:48:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我的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万条。
我可以知道具体的有哪些数据分别在那个分区么?
也就是我想检验我分区创建的效果实现没,我该怎么操作呢

第一次弄这个东西,很多不明白的地方,非常感谢。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 转播转播 分享分享 分享淘帖 顶 踩
2#
发表于 2008-9-4 17:36:26 | 只看该作者
这两天忙,过两天回来拜读...
3#
 楼主| 发表于 2008-9-5 09:31:29 | 只看该作者
内容不多啊,对于高手来说就几分钟的事情。
大哥,不是吧。那可就是下周了啊
4#
发表于 2008-9-9 20:13:07 | 只看该作者
公司组织去了趟张家界旅游才回来^_^...

以上问题最好先看看MySQL参考手册,是最全的了:
http://mysqlpub.com/forumdisplay.php?fid=18
5#
发表于 2008-10-16 17:58:02 | 只看该作者
首先查看建表的SQL语句中有/**/是正确的,另外,想知道某个数据在哪个分区里,你采用的是范围分区,那都已经很明确了啊。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|MariaDB社区 ( 京ICP备07012489号    |
业务联系: QQ:48474881; 邮箱: 48474881@qq.com; 电话:13911732319
声明:本站部分文章是网友转载,若未经作者同意或署名有误,请联系网站管理员。

GMT+8, 2024-11-1 16:30 , Processed in 0.061941 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表