对于RANGE和LIST分区,从网上的一些例子中了解到,可以为每个分区指定相应的数据库服务器,如下所示:
drop database if exists myspider;
create database myspider;
use myspider;
Create table tbl_b(
col_a int,
col_b int,
primary key(col_a)
) engine = Spider
Connection ' table "tbl_a", user "msandbox", password "msandbox" '
partition by range
( col_a ) (
partition pt1 values less than (1000) comment 'host "rdb1", port "3306"',
partition pt2 values less than (2000) comment 'host "rdb2", port "3306"',
partition pt3 values less than (MAXVALUE) comment 'host "rdb3", port "3306"'
);
但是对于KEY和HASH分区,似乎并没有这样为每个分区指定数据库服务器的实例,大多的例子如下所示:
CREATE TABLE articles (
id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
title VARCHAR(200),
body TEXT,
FULLTEXT (title,body)
)
PARTITION BY HASH
(id)
PARTITIONS 4;
或者
CREATE TABLE articles (
id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
title VARCHAR(200),
body TEXT,
FULLTEXT (title,body)
)
PARTITION BY KEY
(id)
PARTITIONS 4;
而且在MySQL四大分区类型中(RANGE、LIST、HASH、KEY),分区键必须是INT类型,或者通过表达式返回INT类型,可以为NULL。唯
一的例外是当分区类型为KEY分区的时候,可以使用其他类型的列作为分区键( BLOB or TEXT 列除外)。
因此,今天特意实践了一下KEY分区,需求如下:
①KEY分区的分区类型不是
INT类型;
②为每个分区指定对应的数据库服务器;
结果成功,创建满足该需求的代码如下:
DROP TABLE IF EXISTS tkc;
CREATE TABLE tkc (cr CHAR)
ENGINE=SPIDER DEFAULT CHARSET=latin1 CONNECTION=' table "tkc", user "msandbox", password "msandbox" '
PARTITION BY KEY
(cr)
PARTITIONS 3
(PARTITION pt1 COMMENT = 'host "127.0.0.1", port "6001"' ENGINE = SPIDER,
PARTITION pt2 COMMENT = 'host "127.0.0.1", port "6002"' ENGINE = SPIDER,
PARTITION pt3 COMMENT = 'host "127.0.0.1", port "6003"' ENGINE = SPIDER);
或者这样也可以
DROP TABLE IF EXISTS tkc;
CREATE TABLE `tkc` (
`cr` CHAR(1) DEFAULT NULL
) ENGINE=SPIDER DEFAULT CHARSET=latin1 CONNECTION=' table "tkc", user "msandbox", password "msandbox" '
PARTITION BY KEY
(cr)
(PARTITION pt1 COMMENT = 'host "127.0.0.1", port "6001"' ENGINE = SPIDER,
PARTITION pt2 COMMENT = 'host "127.0.0.1", port "6002"' ENGINE = SPIDER,
PARTITION pt3 COMMENT = 'host "127.0.0.1", port "6003"' ENGINE = SPIDER)
分享到:
相关推荐
详细介绍mysql5.1 分区技术,通过对list range hash key四种分区技术的举例阐述Mysql分区,18.2.1. RANGE分区 18.2.2. LIST分区 ...18.2.4. KEY分区 18.2.5. 子分区 18.2.6. MySQL分区处理NULL值的方式
MySQL分区常用的是:range、list、hash、key,Oracle10g分区常用的是:range(范围分区)、list(列表分区)、hash(哈希分区)、range-hash(范围—哈希分区)、range-list(列表—复合分区)。下面通过本文详细给...
mysql分区有利于管理非常大的表,mysql分区一共有四种类型,range分区,list分区, hash分区,key分区,我们通过Navicat 可视化工具来分区 1、打开Navicat 找到指定的数据库,设计表 2、打开设计表选择选项,下面有...
MySQL支持RANGE,LIST,HASH,KEY分区类型,其中以RANGE最为常用: Range(范围)–这种模式允许将数据划分不同范围。例如可以将一个表通过年份划分成若干个分区。 Hash(哈希)–这中模式允许通过对表的一个或多个...
表分区与数据库分区是不一样的那么碰到表分区使用时我们要注意一些什么事情呢,今天我们来看一篇关于MySQL数据库表分区注意事项的细节。 1、分区列索引约束 若表有primary key或unique key,则分区表的分区列必须...
2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...
2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...
在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 ...
把一张表按照某种规则(range/list/hash/key等)分成多个区域(页/文件)保存同一个分区表中的所有分区必须是同一个存储引擎注意:无论哪种分区,要么
2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在...
2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...
2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...
2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在...
2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...
├─13、课程:MySQL调优入门.6、水平分区.mp4 ├─13、课程:MySQL调优入门.7、架构上的调整SCALE.mp4 ├─14、课程:基于RDS的维度数据模型.10、案例分析(三).mp4 ├─14、课程:基于RDS的维度数据模型.11、物化...
Mysql ::分区程序MySQL分区管理工具安装将此行添加到您的应用程序的Gemfile中: gem 'mysql-partitioner' 然后执行: $ bundle或将其自己安装为: $ gem install mysql-partitioner用法Usage: mysql-partitioner ...
mysql支持的分析类型包括Range,List ,Hash,Key, 其中Range最常用。 #4、示例代码如下: create table user_range( id int not null auto_increment, name varchar(30), age int , birthday date, province int, ...
image_no表示每个文件的编号,每个文件在业务系统中会生成若干个文件,每个文件的唯一ID就是字段id: 业务表tb_image的一些情况如下: 根据image_no查询和根据id查询; 存量数据2kw; 日增长4w左右; 日查询量...
2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从...