- 浏览: 2261991 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (423)
- FileNet相关 (3)
- 应用服务器相关 (22)
- Java综合 (77)
- 持久层 (24)
- struts (11)
- webservice (8)
- 虚拟机 (2)
- 光盘刻录 (0)
- AD及AD集群 (1)
- JS (33)
- F5 (0)
- loadrunner8.1 (0)
- Java 反编译工具 (2)
- DataBase (62)
- ant (1)
- 操作系统 (29)
- 我的任务 (3)
- 平台架构 (16)
- 业务规则引擎 (2)
- 模板 (1)
- EJB (5)
- spring (24)
- CMMI (1)
- 项目管理 (20)
- LDAP (13)
- JMS (10)
- JSP (19)
- JBPM (2)
- web MVC框架设计思想 (2)
- 第三方支付平台 (2)
- BUG管理工具 (1)
- 垃圾站 (2)
- php (1)
- swing (1)
- 书籍 (1)
- QQ qq (2)
- 移动互联网 (26)
- 爱听的歌曲 (0)
- hadoop (4)
- 数据库 (9)
- 设计模式 (1)
- 面试经验只谈 (1)
- 大数据 (9)
- sp (1)
- 缓存数据库 (8)
- storm (2)
- taobao (2)
- 分布式,高并发,大型互联网,负载均衡 (6)
- Apache Ignite (0)
- Docker & K8S (0)
最新评论
-
wangyudong:
新版本 Wisdom RESTClienthttps://gi ...
spring rest mvc使用RestTemplate调用 -
wangyudong:
很多API doc生成工具生成API文档需要引入第三方依赖,重 ...
spring rest mvc使用RestTemplate调用 -
zhaoshijie:
cfying 写道大侠,还是加载了两次,怎么解决啊?求。QQ: ...
spring容器加载完毕做一件事情(利用ContextRefreshedEvent事件) -
xinglianxlxl:
对我有用,非常感谢
spring容器加载完毕做一件事情(利用ContextRefreshedEvent事件) -
k_caesar:
多谢,学习了
利用maven的resources、filter和profile实现不同环境使用不同配置文件
参考网址:
http://blog.51yip.com/mysql/1013.html
http://www.iteye.com/topic/1032668
查看mysql分区信息(这里查看user表的分区信息):
select * from INFORMATION_SCHEMA.PARTITIONS where table_name='user';
查看执行一条查询SQL会扫描的分区:
explain partitions select * from user where id=10;
一、范围分区:
1、建表时就分区:
CREATE TABLE IF NOT EXISTS `user` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`name` varchar(50) NOT NULL DEFAULT '' COMMENT '名称',
`sex` int(1) NOT NULL DEFAULT '0' COMMENT '0为男,1为女',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1
PARTITION BY RANGE (id) (
PARTITION p0 VALUES LESS THAN (3),
PARTITION p1 VALUES LESS THAN (6),
PARTITION p2 VALUES LESS THAN (9),
PARTITION p3 VALUES LESS THAN (12),
PARTITION p4 VALUES LESS THAN MAXVALUE
);
2、对现有表进行分区:
可以对现有表进行分区,并且会按規则自动的将表中的数据分配相应的分区
# 中,这样就比较好了,可以省去很多事情,看下面的操作*/
alter table aa partition by RANGE(id)
(PARTITION p1 VALUES less than (1),
PARTITION p2 VALUES less than (5),
PARTITION p3 VALUES less than MAXVALUE);
1、查看分区情况
SELECT partition_ordinal_position as 定义顺序,table_schema as 所属数据库,table_name as 所属表,partition_name as 分区表名称,partition_method as 分区类型,partition_expression as 分区列名称,partition_description as 数据范围,table_rows as 数据总数,create_time as 创建时间,update_time as 修时间 FROM INFORMATION_SCHEMA.partitions WHERE TABLE_SCHEMA= schema() AND TABLE_NAME='user';
2、查看特定表的字段定义情况
desc user;
3、查看特定表的创建语句
show create table user;
4、创建表并设置分区
CREATE TABLE IF NOT EXISTS `user` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`name` varchar(50) NOT NULL DEFAULT '' COMMENT '名称',
`sex` int(1) NOT NULL DEFAULT '0' COMMENT '0为男,1为女',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1
PARTITION BY RANGE (id) (
PARTITION p0 VALUES LESS THAN (3),
PARTITION p1 VALUES LESS THAN (6),
PARTITION p2 VALUES LESS THAN (9),
PARTITION p3 VALUES LESS THAN (12),
PARTITION p4 VALUES LESS THAN MAXVALUE
);
5、删除一个分区(当删除了一个分区,也同时删除了该分区中所有的数据)
ALTER TABLE tr DROP PARTITION p2;
6、对现有表进行分区(对现有表进行分区,会按規则自动的将表中的数据分配相应的分区中,也可用于重新规划分区)
alter table aa partition by RANGE(id)
(PARTITION p1 VALUES less than (1),
PARTITION p2 VALUES less than (5),
PARTITION p3 VALUES less than MAXVALUE);
7、新增一个分区(新增分区时必须先把MAXVALUE分区删除,增加完毕后再加上)
alter table user add partition(partition p4 values less than MAXVALUE);
6、查看mysql服务器是否支持分区
show variables like "%part%";
http://blog.51yip.com/mysql/1013.html
http://www.iteye.com/topic/1032668
查看mysql分区信息(这里查看user表的分区信息):
select * from INFORMATION_SCHEMA.PARTITIONS where table_name='user';
查看执行一条查询SQL会扫描的分区:
explain partitions select * from user where id=10;
一、范围分区:
1、建表时就分区:
CREATE TABLE IF NOT EXISTS `user` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`name` varchar(50) NOT NULL DEFAULT '' COMMENT '名称',
`sex` int(1) NOT NULL DEFAULT '0' COMMENT '0为男,1为女',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1
PARTITION BY RANGE (id) (
PARTITION p0 VALUES LESS THAN (3),
PARTITION p1 VALUES LESS THAN (6),
PARTITION p2 VALUES LESS THAN (9),
PARTITION p3 VALUES LESS THAN (12),
PARTITION p4 VALUES LESS THAN MAXVALUE
);
2、对现有表进行分区:
可以对现有表进行分区,并且会按規则自动的将表中的数据分配相应的分区
# 中,这样就比较好了,可以省去很多事情,看下面的操作*/
alter table aa partition by RANGE(id)
(PARTITION p1 VALUES less than (1),
PARTITION p2 VALUES less than (5),
PARTITION p3 VALUES less than MAXVALUE);
1、查看分区情况
SELECT partition_ordinal_position as 定义顺序,table_schema as 所属数据库,table_name as 所属表,partition_name as 分区表名称,partition_method as 分区类型,partition_expression as 分区列名称,partition_description as 数据范围,table_rows as 数据总数,create_time as 创建时间,update_time as 修时间 FROM INFORMATION_SCHEMA.partitions WHERE TABLE_SCHEMA= schema() AND TABLE_NAME='user';
2、查看特定表的字段定义情况
desc user;
3、查看特定表的创建语句
show create table user;
4、创建表并设置分区
CREATE TABLE IF NOT EXISTS `user` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户ID',
`name` varchar(50) NOT NULL DEFAULT '' COMMENT '名称',
`sex` int(1) NOT NULL DEFAULT '0' COMMENT '0为男,1为女',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1
PARTITION BY RANGE (id) (
PARTITION p0 VALUES LESS THAN (3),
PARTITION p1 VALUES LESS THAN (6),
PARTITION p2 VALUES LESS THAN (9),
PARTITION p3 VALUES LESS THAN (12),
PARTITION p4 VALUES LESS THAN MAXVALUE
);
5、删除一个分区(当删除了一个分区,也同时删除了该分区中所有的数据)
ALTER TABLE tr DROP PARTITION p2;
6、对现有表进行分区(对现有表进行分区,会按規则自动的将表中的数据分配相应的分区中,也可用于重新规划分区)
alter table aa partition by RANGE(id)
(PARTITION p1 VALUES less than (1),
PARTITION p2 VALUES less than (5),
PARTITION p3 VALUES less than MAXVALUE);
7、新增一个分区(新增分区时必须先把MAXVALUE分区删除,增加完毕后再加上)
alter table user add partition(partition p4 values less than MAXVALUE);
6、查看mysql服务器是否支持分区
show variables like "%part%";
- mysql分区与分表.rar (19.9 KB)
- 下载次数: 3
发表评论
-
性能优化重要的mysql profile功能
2023-02-24 23:24 234关键字:性能优化重要的mysql profile功能 ... -
mysql源码解读之事务提交过程--第二篇
2018-01-10 15:03 519关键字:mysql源码解读 ... -
循环创建多张表 和 多个数据库sql语句(数据库水平分库分表时方便)
2016-03-04 12:58 12385关键字:循环创建多张 ... -
高可用、开源的Redis缓存集群方案
2015-04-16 12:25 3758推荐综合架构交流群:J ... -
Oracle实现类split函数的方
2015-04-16 10:10 642关键字:Oracle实现类split函数的方 项目里需要保存结 ... -
各种Nosql数据库系统对比及应用场景分析
2015-04-15 16:29 756关键字:各种Nosql数据库系统对比及应用场景分析 导读:Kr ... -
数据库迁移之从oracle 到 MySQL
2015-04-11 09:38 916关键字:数据库迁移之从oracle 到 MySQL 开场白: ... -
Mongodb命令大全
2015-03-18 11:18 803关键字:Mongodb命令大全 他支持的数据结构非常松散,是类 ... -
MongoDB中缩减Shard集群(删除一个Shard)--删除一个分片
2015-03-13 12:29 3641关键字:MongoDB中缩减Shard集群(删除一个Shard ... -
Mongodb副本集(三个节点:一主一从一仲裁)-配置文件方式启动
2015-03-05 17:32 2072关键字:Mongodb副本集(三个节点:一主一从一仲裁)-配置 ... -
win7 64位的数据源(ODBC)配置问题
2015-01-20 16:36 1078关键字:win7 64位的数据源(ODBC)配置问题 ... -
atomikos(com.atomikos.icatch.SysException: Error in init(): Log already in use)
2014-10-15 13:12 8528关键字:atomikos(com.atomikos.icatc ... -
Mysql高可用架构
2014-09-02 11:41 2801关键字:Mysql高可用架构 最近花了点时间研究了一下mys ... -
MySQL原生HA方案 – Fabric体验之旅
2014-08-21 13:13 7110关键字:MySQL原生HA方案 – Fabric体验之旅 ta ... -
性能优化重要的mysql profile功能
2014-02-10 15:25 51关键字:性能优化重要的mysql profile功能 my ... -
mysql profile功能
2014-02-10 15:12 24关键字:mysql profile功能 mysql的sql ... -
mybatis优化
2013-11-29 00:12 6456关键字:mybatis优化 1、每个bean都要有对应的g ... -
动态分库分表策略
2013-11-21 15:52 1351关键字:动态分库分表策略 参考网址:http://drag ... -
Windows 2008下如何配置Oracle ASM
2013-08-19 13:23 58800关键字:Windows 2008下如何配置Oracle ASM ... -
plsql 链接远程机器零配置
2013-07-17 12:06 3891关键字:plsql 链接远程机器零配置 打开plsql会弹 ...
相关推荐
MySQL分区是一种数据库优化技术,它将大型表分成更小、更易管理的部分,每个部分称为一个分区。这种技术有助于提高查询性能,特别是对于那些需要处理大量数据或执行复杂查询的应用程序。MySQL支持多种分区类型,包括...
"互联网公司为啥不使用mysql分区表" 在互联网公司中,mysql分区表是一个比较少用的技术,这是因为分区表存在一些缺陷和限制,使得互联网公司更多地选择自己分库分表来水平扩展数据库。 首先,分区表的设计需要考虑...
MySQL分区表是一种优化大型数据表查询效率的技术,它将一个大表分成多个逻辑上相连但物理上独立的部分,每个部分称为一个分区。分区可以按照不同的策略进行,如范围、哈希、列表或复合分区。这样做有助于提高数据...
MySQL 分区是数据库管理系统中的一种优化策略,它将大型表的数据分布在不同的物理存储上,以提高查询性能和便于管理大量数据。分区的本质是将一张大表逻辑上分成多个部分,但用户在操作时仍然将其视为单个表。MySQL ...
### MySQL分区分表方案实践手册知识点详述 #### 一、MySQL分区简介 数据库分区是一项重要的物理数据库设计技术,主要用于优化数据库性能并简化数据管理。MySQL的分区主要包括两种形式:水平分区和垂直分区。 - **...
### MySQL分区资源整理 #### 一、分区概念与优势 MySQL中的分区技术是数据库优化的重要手段之一,尤其适用于处理大规模数据集。通过分区,数据库能够将一个庞大的表拆分为若干个小部分,使得管理和操作变得更加...
MySQL分区是数据库管理系统MySQL中的一种数据存储管理技术,它允许用户将数据表拆分成多个较小的、更容易管理的片段。这些片段被称为分区。通过这种技术可以提高数据库的性能,便于维护和备份,并且可以对不同分区...
1. **存储能力增强**:相比于单一的磁盘或文件系统分区,MySQL 分区可以存储更多数据。 2. **数据清理便捷**:可以更简单地删除不再需要或过时的数据。 3. **查询优化**:某些查询可以直接在特定分区上执行,减少...
【MySQL 表分区详解】 MySQL 表分区是一种高级的数据组织技术,它允许将大型表分成较小、更易管理和处理的部分。这种技术对于处理海量数据,尤其是超过亿级别的数据集非常有效,可以显著提升查询性能和数据管理效率...
MySQL分区管理工具是一种优化数据库性能的技术,它将大型表分解为更小、更易管理的部分,以提高查询效率和数据管理的便利性。在MySQL中,分区主要基于表的数据,根据预定义的规则将数据分布到不同的物理部分。这样...
总的来说,Zabbix的MySQL分区优化是一个涉及数据库设计和管理的重要环节。通过合理地利用分区技术,可以有效应对大规模监控数据的挑战,保持Zabbix系统的高效运行。不过,务必根据你的实际情况进行调整,并考虑其他...
#### 一、MySQL分区概述与应用场景 在当今互联网行业中,MySQL数据库作为最常用的关系型数据库之一,在数据管理方面扮演着极其重要的角色。随着数据量的不断增长,对数据库性能的要求也日益提高。为了提高查询效率...
### MySQL分区表:万字详解与实践指南 #### 一、引言 在现代数据库管理中,随着数据量的不断增长,如何高效管理和查询数据成为了一个重要的课题。MySQL作为广泛使用的开源关系型数据库管理系统之一,提供了多种强大...
MySQL分区技术是一种将数据库中的表分成多个较小的、更易于管理的部分的策略,它通过将数据分布到不同的物理区域来提升数据库性能。这种技术在处理大量数据的传统项目中尤为重要,可以帮助改善数据库的扩展性、管理...
### MySQL分区分表的设计及实现 #### 一、引言 随着信息技术的飞速发展,数据量呈现爆炸式增长,海量数据的管理和处理成为了一项挑战。尤其在关系型数据库中,如MySQL这样的系统,当单个表的数据量达到一定规模后...
MySQL 分区和分表技术总结 MySQL 分区和分表技术是数据库性能优化的重要手段,特别是在大型数据库系统中。以下是 MySQL 分区和分表技术的详细介绍: 什么是分表? 分表是将一个大表按照一定的规则分解成多张具有...