原文:https://blog.51cto.com/13675040/2114580

1.由于数据量较大,对现有的表进行分区

操作方式.
可以使用ALTER TABLE来进行更改表为分区表,这个操作会创建一个分区表,然后自动进行数据copy然后删除原表, 
猜测服务器资源消耗比较大。

ALTER TABLE tbl_rtdata PARTITION BY RANGE (Month(fld_date))

PARTITION p_Apr VALUES LESS THAN (TO_DAYS('2012-05-01')),
PARTITION p_May VALUES LESS THAN (TO_DAYS('2012-06-01')), 
PARTITION p_Dec VALUES LESS THAN MAXVALUE );
**

2 新建一个和原来表一样的分区表,然后把数据从原表导出,接着倒入新表。 **

(原来的表主键只有id,而我的分区字段是 stsdate, 这里主键要修改为 id,stsdate 联合主键,分区表要求分区字段要是主键或者是主键的一部分)

操作过程
采用第二种方案。先创建分区表,然后导出原表数据,新表名称改为原表名,然后插入,最后建立普通索引。

建立分区表

CREATE TABLE `apdailysts_p` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`ap_id` INT(11) NOT NULL,
`mac` VARCHAR(17) NOT NULL,
`liveinfo` LONGTEXT NOT NULL,
`livetime` INT(11) NOT NULL,
`stsdate` DATE NOT NULL,
`lastmodified` DATETIME NOT NULL,
PRIMARY KEY (`id`, `stsdate`)
)
PARTITION BY RANGE COLUMNS(stsdate) (
PARTITION p0 VALUES LESS THAN ('2016-06-01'),
PARTITION p1 VALUES LESS THAN ('2016-07-01'),
PARTITION p2 VALUES LESS THAN ('2016-08-01'),
PARTITION p3 VALUES LESS THAN ('2016-09-01'),
PARTITION p4 VALUES LESS THAN ('2016-10-01'),
PARTITION p5 VALUES LESS THAN ('2016-11-01'),
PARTITION p6 VALUES LESS THAN ('2016-12-01'),
PARTITION p7 VALUES LESS THAN ('2017-01-01'),
PARTITION p8 VALUES LESS THAN ('2017-02-01'),
PARTITION p9 VALUES LESS THAN ('2017-03-01'),
PARTITION p10 VALUES LESS THAN ('2017-05-01'),
PARTITION p11 VALUES LESS THAN ('2017-06-01'),
PARTITION p12 VALUES LESS THAN ('2017-07-01'),
PARTITION p13 VALUES LESS THAN ('2017-08-01'),
PARTITION p14 VALUES LESS THAN ('2017-09-01'),
PARTITION p15 VALUES LESS THAN MAXVALUE
);

导出数据

mysqldump -u dbname -p --no-create-info dbname apdailysts  > apdailysts.sql

修改表名,导入数据(10分钟就导入完了,200w, 8g多一点数据),测试下,删除原来的表。

测试可以正常使用,观察几天天。。

最新文章

  1. Java 知识结构图
  2. 渗透杂记-2013-07-13 windows/mssql/mssql_payload
  3. UVA11178 Morley's Theorem(基础模板)
  4. Android Drawable资源
  5. (转载)delphi实例TDBGrid用右键菜单复制行粘贴行
  6. Not enough free space on disks! linux
  7. 【HDOJ】2405 Marbles in Three Baskets
  8. ASP.NET DataList绑定数据并实现分页
  9. 代理模式(Proxy)
  10. WebService的学习
  11. 【Nginx】下载,请求限速,根据URL参数限速
  12. react项目构建
  13. 【任务】Python语言程序设计.MOOC学习
  14. GALV_maptravel研究分析(2)
  15. Linux进程核心调度器之主调度器schedule--Linux进程的管理与调度(十九)
  16. Tomcat解决中文乱码并部署项目
  17. C++程序设计方法3:虚函数
  18. jquery自动填充输入框
  19. BZOJ 3357: [Usaco2004]等差数列
  20. Python 多进程 一分钟下载二百张图片 是什么样子的体验

热门文章

  1. Chrome崩溃的解决办法
  2. Error in readRDS(dest) : error reading from connection
  3. C++ 派生类覆盖重载基类函数
  4. html 指定页面字符集的两种方式
  5. Log4j之HelloWorld
  6. mysql 数据库中的每张表加同一个字段(避免重复加)
  7. centos7 df 命令卡死
  8. Python【每日一问】32
  9. k8s+Jenkins+GitLab-自动化部署项目
  10. 034 通过域名访问服务器或本地的图片资源---switchhost+nginx