Mysql数据库表分区跨磁盘存储 表分区放到不同的磁盘 表分区存储到指定磁盘路径_mysql 怎么分区到不同的磁盘

order_date DATE,
note VARCHAR(500),
INDEX idx (id)
) ENGINE = INNODB
PARTITION BY LIST(store_id) (
PARTITION p1
VALUES IN (1, 3, 4, 17)
INDEX DIRECTORY = ‘/var/orders/district1’
DATA DIRECTORY = ‘/var/orders/district1’,
PARTITION p2
VALUES IN (2, 12, 14)
INDEX DIRECTORY = ‘/var/orders/district2’
DATA DIRECTORY = ‘/var/orders/district2’,
PARTITION p3
VALUES IN (6, 8, 20)
INDEX DIRECTORY = ‘/var/orders/district3’
DATA DIRECTORY = ‘/var/orders/district3’,
PARTITION p4
VALUES IN (5, 7, 9, 11, 16)
INDEX DIRECTORY = ‘/var/orders/district4’
DATA DIRECTORY = ‘/var/orders/district4’,
PARTITION p5
VALUES IN (10, 13, 15, 18)
INDEX DIRECTORY = ‘/var/orders/district5’
DATA DIRECTORY = ‘/var/orders/district5’
);


* 定新路径下验证。



[root@f033b3fe25e2 orders]# tree
.
├── district1
│ └── test
│ └── orders_list2#P#p1.ibd
├── district2
│ └── test
│ └── orders_list2#P#p2.ibd

├── district3
│ └── test
│ └── orders_list2#P#p3.ibd

├── district4
│ └── test
│ └── orders_list2#P#p4.ibd

└── district5
└── test
└── orders_list2#P#p5.ibd


* 



10 directories, 5 files
[root@f033b3fe25e2 orders]# pwd
/var/orders


* 


查询验证:



mysql> explain partitions select * from orders_list2;
±—±------------±-------------±---------------±-----±--------------±-----±--------±-----±-----±------+
| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | Extra |
±—±------------±-------------±---------------±-----±--------------±-----±--------±-----±-----±------+
| 1 | SIMPLE | orders_list2 | p1,p2,p3,p4,p5 | ALL | NULL | NULL | NULL | NULL | 11 | NULL |
±—±------------±-------------±---------------±-----±--------------±-----±--------±-----±-----±------+
1 row in set (0.00 sec)


* 


### 步骤四:新增分区处理。


场景假设:比如最新的数据,我们想存储到SSD硬盘上。可以通过增加指定路径的分区文件达到目的。



ALTER TABLE orders_list2 ADD PARTITION (PARTITION p6 VALUES IN (21,22,23)
DATA DIRECTORY = ‘/var/ssd_testing’ INDEX DIRECTORY = ‘/var/ssd_testing’);

[root@f033b3fe25e2 var]# tree ssd_testing/
ssd_testing/
└── test
└── orders_list2#P#p6.ibd


* 


六个分区结果:



mysql> explain partitions select * from orders_list2;
±—±------------±-------------±------------------±-----±--------------±-----±--------±-----±-----±------+
| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | Extra |
±—±------------±-------------±------------------±-----±--------------±-----±--------±-----±-----±------+
| 1 | SIMPLE | orders_list2 | p1,p2,p3,p4,p5,p6 | ALL | NULL | NULL | NULL | NULL | 12 | NULL |
±—±------------±-------------±------------------±-----±--------------±-----±--------±-----±-----±------+
1 row in set (0.00 sec)


* 


参考:<https://dev.mysql.com/doc/refman/5.6/en/tablespace-placing.html>


2016年10月21日 20:56 思于家中床前


作者:铭毅天下   
转载请标明出处,原文地址:   
<http://blog.csdn.net/laoyang360/article/details/52887016>   
如果感觉本文对您有帮助,请点击‘顶’支持一下,您的支持是我坚持写作最大的动力,谢谢!




  

 


解决报错 [Err] 1210 - Incorrect arguments to DATA DIRECTORY


这里报错是因为在my.cnf中配置的datadir就是在 /data/mysql/mysql-percona-5.6.21/目录下,  



解决方法:换另外一个目录,成功



CREATE TABLE orders_list (
id INT AUTO_INCREMENT,
customer_surname VARCHAR(30),
store_id INT,
salesperson_id INT,
order_date DATE,
note VARCHAR(500),
INDEX idx (id)
) ENGINE = INNODB
PARTITION BY LIST(store_id) (
PARTITION p1
VALUES IN (1, 3, 4, 17)
INDEX DIRECTORY = ‘/data1/datap1’
DATA DIRECTORY = ‘/data1/datap1’,
PARTITION p2
VALUES IN (2, 12, 14)
INDEX DIRECTORY = ‘/data1/datap2’
DATA DIRECTORY = ‘/data1/datap2’
);

到目录验证: 
  

[root@xhdb01 data1]# tree /data1  
/data1  
├── datap1  
│   └── test                                                     --多了这个目录  
│       └── orders\_list#P#p1.ibd                        --只有.ibd文件  
└── datap2  
    └── test  
        └── orders\_list#P#p2.ibd                        --只有.ibd文件  
  
  
[root@xhdb01 data1]# tree /data/mysql/mysql-percona-5.6.21/test  
/data/mysql/mysql-percona-5.6.21/test  
├── district1  
├── district2  
├── orders\_list.frm  
├── orders\_list.par  
├── orders\_list#P#p1.isl                                --比平时多了这个文件  
└── orders\_list#P#p2.isl                                --比平时多了这个文件  
  
  



**报错[Err] 1030 - Got error -1 from storage engine**



INDEX DIRECTORY = ‘/data1/datap1’
DATA DIRECTORY = ‘/data1/datap1’


这里报错是因为 /data1/datap1 目录不存在,或者存在,但没有权限。


**解决方法:**



> 
> 创建目录:    
> 
> 
> mkdir -p /data1/datap1
> 
> 
> mkdir -p /data1/datap2
> 
> 
> 修改权限:    
> 
> 
> chown -R mysql:mysql /data1/datap2
> 
> 
> chown -R mysql:mysql /data1/datap2
> 
> 
>   
> 
> 
> 
> 
> ## linux下mysql数据库存放在不同磁盘或挂载的文件夹
> 
> 
> 
> 
> 原创 
> 2014年08月20日 16:27:06
> 
> * 4362
> 


### 那么如何才能正确的掌握Redis呢?

为了让大家能够在Redis上能够加深,所以这次给大家准备了一些Redis的学习资料,还有一些大厂的面试题,包括以下这些面试题

*   并发编程面试题汇总

*   JVM面试题汇总

*   Netty常被问到的那些面试题汇总

*   Tomcat面试题整理汇总

*   Mysql面试题汇总

*   Spring源码深度解析

*   Mybatis常见面试题汇总

*   Nginx那些面试题汇总

*   Zookeeper面试题汇总

*   RabbitMQ常见面试题汇总

JVM常频面试:

![Redis高频面试笔记:基础+缓存雪崩+哨兵+集群+Reids场景设计](https://img-blog.csdnimg.cn/img_convert/525ce371fc7969ccc374adf8463bc870.webp?x-oss-process=image/format,png)

Mysql面试题汇总(一)

![Redis高频面试笔记:基础+缓存雪崩+哨兵+集群+Reids场景设计](https://img-blog.csdnimg.cn/img_convert/4c9fa6f10f2a2acb1c082bbceee68858.webp?x-oss-process=image/format,png)

Mysql面试题汇总(二)

![Redis高频面试笔记:基础+缓存雪崩+哨兵+集群+Reids场景设计](https://img-blog.csdnimg.cn/img_convert/75345b5848c5ad9a3c1c39d6e821aca2.webp?x-oss-process=image/format,png)

Redis常见面试题汇总(300+题)

![Redis高频面试笔记:基础+缓存雪崩+哨兵+集群+Reids场景设计](https://img-blog.csdnimg.cn/img_convert/af7855e3c295e30761980d5f83527205.webp?x-oss-process=image/format,png)


*   Zookeeper面试题汇总

*   RabbitMQ常见面试题汇总

JVM常频面试:

[外链图片转存中...(img-E5ZVF3DU-1714426747115)]

Mysql面试题汇总(一)

[外链图片转存中...(img-wRdD3QrZ-1714426747116)]

Mysql面试题汇总(二)

[外链图片转存中...(img-1lZWwq99-1714426747116)]

Redis常见面试题汇总(300+题)

[外链图片转存中...(img-wqtRBvLT-1714426747117)]

> **本文已被[CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】](https://bbs.csdn.net/topics/618154847)收录**
  • 20
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值