返回顶部
首页 > 资讯 > 数据库 >MySQL 指定各分区路径
  • 615
分享到

MySQL 指定各分区路径

2024-04-02 19:04:59 615人浏览 泡泡鱼
摘要

介绍可以针对分区表的每个分区指定各自的存储路径,对于innodb存储引擎的表只能指定数据路径,因为数据和索引是存储在一个文件当中,对于MYISAM存储引擎可以分别指定数据文件和索引文件,一般也只有RANGE

介绍

可以针对分区表的每个分区指定各自的存储路径,对于innodb存储引擎的表只能指定数据路径,因为数据和索引是存储在一个文件当中,对于MYISAM存储引擎可以分别指定数据文件和索引文件,一般也只有RANGE、LIST分区、sub子分区才有可能需要单独指定各个分区的路径,HASH和KEY分区的所有分区的路径都是一样。RANGE分区指定路径和LIST分区是一样的,这里就拿LIST分区来做讲解。

 

一、MYISAM存储引擎

MySQL 指定各分区路径

CREATE TABLE th (id INT, adate DATE)
engine='MyISAM'PARTITioN BY LIST(YEAR(adate))
(
  PARTITION p1999 VALUES IN (1995, 1999, 2003)
    DATA DIRECTORY = '/data/data'
    INDEX DIRECTORY = '/data/idx',
  PARTITION p2000 VALUES IN (1996, 2000, 2004)
    DATA DIRECTORY = '/data/data'
    INDEX DIRECTORY = '/data/idx',
  PARTITION p2001 VALUES IN (1997, 2001, 2005)
    DATA DIRECTORY = '/data/data'
    INDEX DIRECTORY = '/data/idx',
  PARTITION p2002 VALUES IN (1998, 2002, 2006)
    DATA DIRECTORY = '/data/data'
    INDEX DIRECTORY = '/data/idx');

MySQL 指定各分区路径

注意:MYISAM存储引擎的数据文件和索引文件是分库存储所以可以为数据文件和索引文件定义各自的路径,INNODB存储引擎只能定义数据路径。

二、INNODB存储引擎

MySQL 指定各分区路径

CREATE TABLE thex (id INT, adate DATE)
engine='InnoDB'PARTITION BY LIST(YEAR(adate))
(
  PARTITION p1999 VALUES IN (1995, 1999, 2003)
    DATA DIRECTORY = '/data/data',
    
  PARTITION p2000 VALUES IN (1996, 2000, 2004)
    DATA DIRECTORY = '/data/data',
   
  PARTITION p2001 VALUES IN (1997, 2001, 2005)
    DATA DIRECTORY = '/data/data',
    
  PARTITION p2002 VALUES IN (1998, 2002, 2006)
    DATA DIRECTORY = '/data/data'
  );

MySQL 指定各分区路径

MySQL 指定各分区路径

指定路径之后在原来的路径中innodb生成了4个指向数据存储的路径文件,myisam生成了一个th.par文件指明该表是分区表,同时数据文件和索引文件指向了实际的存储路径。

三、子分区 

1.子分区

MySQL 指定各分区路径

CREATE TABLE tb_sub_dir (id INT, purchased DATE)
ENGINE='MYISAM'
    PARTITION BY RANGE( YEAR(purchased) )
    SUBPARTITION BY HASH( TO_DAYS(purchased) ) (
        PARTITION p0 VALUES LESS THAN (1990) 
        (
            SUBPARTITION s0
                DATA DIRECTORY = '/data/data_sub1'
                INDEX DIRECTORY = '/data/idx_sub1',
            SUBPARTITION s1
                DATA DIRECTORY = '/data/data_sub1'
                INDEX DIRECTORY = '/data/idx_sub1'
        ),
        PARTITION p1 VALUES LESS THAN (2000) 
        (
            SUBPARTITION s2
                DATA DIRECTORY = '/data/data_sub2'
                INDEX DIRECTORY = '/data/idx_sub2',
            SUBPARTITION s3
                DATA DIRECTORY = '/data/data_sub2'
                INDEX DIRECTORY = '/data/idx_sub2'
        ),
        PARTITION p2 VALUES LESS THAN MAXVALUE 
        (
            SUBPARTITION s4
                DATA DIRECTORY = '/data/data_sub3'
                INDEX DIRECTORY = '/data/idx_sub3',
            SUBPARTITION s5
                DATA DIRECTORY = '/data/data_sub3'
                INDEX DIRECTORY = '/data/idx_sub3'
        )
    );

MySQL 指定各分区路径

 

MySQL 指定各分区路径

2.子分区再分

MySQL 指定各分区路径

CREATE TABLE tb_sub_dirnew (id INT, purchased DATE)
ENGINE='MYISAM'
    PARTITION BY RANGE( YEAR(purchased) )
    SUBPARTITION BY HASH( TO_DAYS(purchased) ) (
        PARTITION p0 VALUES LESS THAN (1990) 
        DATA DIRECTORY = '/data/data'
        INDEX DIRECTORY = '/data/idx'
        (
            SUBPARTITION s0
                DATA DIRECTORY = '/data/data_sub1'
                INDEX DIRECTORY = '/data/idx_sub1',
            SUBPARTITION s1
                DATA DIRECTORY = '/data/data_sub1'
                INDEX DIRECTORY = '/data/idx_sub1'
        ),
        PARTITION p1 VALUES LESS THAN (2000)
        DATA DIRECTORY = '/data/data'
        INDEX DIRECTORY = '/data/idx'
        (
            SUBPARTITION s2
                DATA DIRECTORY = '/data/data_sub2'
                INDEX DIRECTORY = '/data/idx_sub2',
            SUBPARTITION s3
                DATA DIRECTORY = '/data/data_sub2'
                INDEX DIRECTORY = '/data/idx_sub2'
        ),
        PARTITION p2 VALUES LESS THAN MAXVALUE
        DATA DIRECTORY = '/data/data'
        INDEX DIRECTORY = '/data/idx'
        (
            SUBPARTITION s4
                DATA DIRECTORY = '/data/data_sub3'
                INDEX DIRECTORY = '/data/idx_sub3',
            SUBPARTITION s5
                DATA DIRECTORY = '/data/data_sub3'
                INDEX DIRECTORY = '/data/idx_sub3'
        )
    );

MySQL 指定各分区路径

也可以给个分区指定路径后再给子分区指定路径,但是这样没有意义,因为数据的存在都是由子分区决定的。

注意:

1.指定的路径必须存在,否则分区无法创建成功

2.MYISAM存储引擎的数据文件和索引文件是分库存储所以可以为数据文件和索引文件定义各自的路径,INNODB存储引擎只能定义数据路径

 

参考: 

RANGE分区:h ttp://w ww.cnb logs.com/ch enmh/p/5627912.html

LIST分区:h ttp://w ww.cnbl ogs.com/che nmh/p/5643174.html

COLUMN分区: h ttp://w ww.c nblogs.com/c henmh/p/5630834.html

HASH分区:ht tp://w ww.cnb logs.com/ch enmh/p/5644496.html

KEY分区:htt p://ww  w.cnblo gs.com/ch enmh/p/5647210.html

子分区:htt p://w ww.cnblo gs.com/che nmh/p/5649447.html

分区建索引:h ttp://w ww.cn blogs.com/chenmh/p/5761995.html

分区介绍总结: ht tp://w ww.cnb logs.com/chen mh/p/5623474.html

总结

 通过给各个分区指定各自的磁盘可以有效的提高读写性能,在条件允许的情况下是一个不错的方法。


您可能感兴趣的文档:

--结束END--

本文标题: MySQL 指定各分区路径

本文链接: https://lsjlt.com/news/51046.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • MySQL 指定各分区路径
    介绍可以针对分区表的每个分区指定各自的存储路径,对于innodb存储引擎的表只能指定数据路径,因为数据和索引是存储在一个文件当中,对于MYISAM存储引擎可以分别指定数据文件和索引文件,一般也只有RANGE...
    99+
    2024-04-02
  • MySQL分区之指定各分区路径详解
    目录介绍一、MYISAM存储引擎二、INNODB存储引擎三、子分区1.子分区2.子分区再分总结介绍 可以针对分区表的每个分区指定各自的存储路径,对于innodb存储引擎的表只能指定数...
    99+
    2024-04-02
  • mysql如何指定存储路径
    本篇文章给大家分享的是有关mysql如何指定存储路径,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。mysql如何指定存储路径1.在MySQL安...
    99+
    2024-04-02
  • pycharm指定python路径
    pycharm指定python路径,pycharm配置python环境的方法是: 1、依次点击【File】、【Project Interpreter】; 2、点击【Show All】,选择【Existing Environment】; ...
    99+
    2023-09-15
    python pycharm 开发语言 Powered by 金山文档
  • mysql安装如何指定安装路径
    如何指定 mysql 安装路径?下载 mysql 安装包。将安装包解压缩到指定路径。以管理员权限打开命令行并导航到解压目录。执行安装命令,使用 --target-dir 选项指定安装路径...
    99+
    2024-06-14
    mysql
  • nodejs如何指定路径
    Node.js 是一个非常流行的 JavaScript 服务器端运行环境,它允许开发者使用 JavaScript 进行服务器端编程,相比于传统的服务器端语言,如 PHP、Java 等,Node.js 具有更加高效、轻量和易用的特点,因此在 ...
    99+
    2023-05-24
  • rpm包指定安装路径
    rpm包一般都有默认的安装路径,如何你要更改默认路径,有没有办法呢?当然有。我们来看下面的例子。比如在安装JDK (Java Development Kit)或JRE (Java Runtime Envir...
    99+
    2024-04-02
  • linux怎么指定jar路径
    要在Linux系统中指定jar路径,可以使用以下命令:java -jar /path/to/jar/file.jar其中,/path...
    99+
    2023-09-21
    linux
  • eclipse怎么指定jdk路径
    在Eclipse中指定JDK路径的方法如下: 打开Eclipse,选择菜单栏中的“Window” -> “Preferen...
    99+
    2024-03-13
    eclipse jdk
  • tomcat怎么指定项目路径
    在Tomcat中指定项目路径,可以通过修改Tomcat的配置文件来实现。 打开Tomcat的安装目录,找到conf目录下的serv...
    99+
    2023-10-27
    tomcat
  • 怎么在python中指定源路径
    本篇文章为大家展示了怎么在python中指定源路径,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研究;3、网络爬虫;4、...
    99+
    2023-06-06
  • pycharm指定python路径过程详解
    pycharm指定python路径,pycharm配置python环境的方法是: 1、依次点击【File】、【Project Interpreter】; 2、点击【Show All】...
    99+
    2023-05-16
    pycharm指定python路径 指定python路径
  • 安装的php怎么指定路径
    PHP是一种流行的服务器端编程语言,可以用于创建动态网站和Web应用程序。在许多情况下,您可能需要安装PHP并将其安装到特定的目录中。在本文中,我们将介绍如何安装PHP并指定目录路径。步骤1:下载PHP首先,您需要下载PHP的二进制可执行文...
    99+
    2023-05-24
  • 切换Anaconda的指定文件夹路径
    anaconda刚开始下载的时候,默认是在c盘,然后我们使用anaconda打开文件夹也是打开c盘的文件夹。如果想在指定文件夹打开anaconda,可以按照如下步骤来。 先找到anaconda Prompt  如果是这种情况可以进行如下操...
    99+
    2023-09-10
    python
  • java如何获取指定文件路径
    在Java中,要获取指定文件的路径,可以使用java.nio.file.Path类来完成。可以使用以下几种方法来获取文件路径:1. ...
    99+
    2023-10-21
    java
  • qt怎么打开指定路径文件
    在Qt中,可以使用QDesktopServices的openUrl函数来打开指定路径文件。以下是示例代码:```cpp#include #include #include int main(int argc, char *argv[])...
    99+
    2023-08-11
    qt
  • mysql中找不到指定文件路径的解决方法
    小编给大家分享一下mysql中找不到指定文件路径的解决方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!mysql中找不到指定文...
    99+
    2024-04-02
  • Zuul 如何屏蔽服务和指定路径
    Zuul 屏蔽服务和指定路径 有时我们的一些后端服务并不想暴露出去 我们可以通过屏蔽服务或者路径的方式来进行实现: ### 网关配置 zuul: routes: de...
    99+
    2024-04-02
  • pip install如何指定包的安装路径
    目录pip install指定安装目录改变pip的安装路径dist-packages和site-packages区别总结pip install指定安装目录 pip install一般...
    99+
    2024-04-02
  • Zuul怎么屏蔽服务和指定路径
    这篇文章给大家分享的是有关Zuul怎么屏蔽服务和指定路径的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Zuul 屏蔽服务和指定路径有时我们的一些后端服务并不想暴露出去我们可以通过屏蔽服务或者路径的方式来进行实现:...
    99+
    2023-06-20
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作