MySQL 5.1 新增的分区(Partitioning)功能

旧的技术新闻:MySQL5.1.3 发布的时候新增了分区(Partitioning)功能。 在 MySQL 5.1 的手册中已经可以看到相关的技术描述

MySQL 目前支持水平分区,也就是针对行的分区,主要有四种分区类型:

  • RANGE 分区
  • LIST 分区
  • HASH 分区
  • KEY 分区 –类似 HASH 分区,只是要根据用户定义的表达式来进行分区

MySQL 的 Key 分区类型,和微软的 Yukon (SQL Server 2005) 的分区方式很类似的,相对灵活一些,而 Oracle 的复合分区则为范围分区与 HASH 的结合体,这样略失灵活,但是便于管理。

目前的 MySQL 分区实现上有限制:分区和索引必须是分区的。也就是说,MySQL 目前还没有类似 Oracle 全局索引(Global Index)的概念,而只支持 Local Index 。如果有时间的话,倒是很想测试一下 MySQL 分区的更多技术细节。

更多信息:参见我以前写的SQL Server 2005 与 Oracle Database 10g 在分区能力上的比较


2 thoughts on “MySQL 5.1 新增的分区(Partitioning)功能

  1. Yanni.Zheng

    发信人: ynzheng (修炼Nutch&Mozdex中), 信区: Database
    标 题: 问一个mysql的链接表和符号链接库的问题
    发信站: 水木社区 (Tue Mar 21 17:19:37 2006), 站内
    看mysql文档里介绍,mysql支持使用符号链接表和库,
    可以将库放到其他位置
    我的mysql配置文件my.conf内
    datadir = /var/lib/mysql
    我将 一个数据库表mnogosearch3235 链接为:
    lrwxrwxrwx 1 mysql mysql 67 2006-03-12 22:42 mnogosearch3235 -> /home/username/mnt/cobd/temp_mysql_datadir/datadir/mnogosearch3235/
    重启mysql后就找不到mnogosearch3235 库
    mysql配置文件my.conf内
    datadir = /home/username/mnt/cobd/temp_mysql_datadir/datadir/
    就可以找到mnogosearch3235 库
    将表链接为:
    -rw-r—– 1 mysql mysql 8998 2006-03-21 17:00 url.frm
    lrwxrwxrwx 1 mysql mysql 80 2006-03-21 16:41 urlinfo.frm -> /home/username/mnt/cobd/temp_mysql_tabledir/tabledir/mnogosearch3235/urlinfo.frm
    lrwxrwxrwx 1 mysql mysql 80 2006-03-21 16:41 urlinfo.MYD -> /home/username/mnt/cobd/temp_mysql_tabledir/tabledir/mnogosearch3235/urlinfo.MYD
    lrwxrwxrwx 1 mysql mysql 80 2006-03-21 16:41 urlinfo.MYI -> /home/username/mnt/cobd/temp_mysql_tabledir/tabledir/mnogosearch3235/urlinfo.MYI
    lrwxrwxrwx 1 mysql mysql 76 2006-03-21 16:41 url.MYD -> /home/username/mnt/cobd/temp_mysql_tabledir/tabledir/mnogosearch3235/url.MYD
    -rw-r—– 1 mysql mysql 47276032 2006-03-21 17:08 url.MYI
    则提示
    Error: ‘DB err: MySQL driver: #1105: File ‘/home/username/mnt/cobd/temp_mysql_tabledir/tabledir/mnogosearch3235/url.MYD’ not found (Errcode: 13)
    username@colinux:~/var/temp_mysql_datadir$ sudo ls -l /home/username/mnt/cobd/temp_mysql_tabledir/tabledir/mnogosearch3235/url.MYD
    -rw-rw—- 1 mysql mysql 47498160 2006-03-21 15:18 /home/username/mnt/cobd/temp_mysql_tabledir/tabledir/mnogosearch3235/url.MYD

    欢迎对软件下载,PHP,开源,搜索引擎,SP业务和技术交流,合作,讨论等
    msn:[email protected]

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *