背景:由于我负责i西科教务处系统,i西科用户量达到20000人左右,那么假设每人每星期10门讲课,数据库记录信息将是20万条,如果不将课程表进行分区或分表,就会造成爆表的情况,如此看来,分区是必须要做的事情。

1、待讨论问题
⑴MySQL分区问题
   分区的类型
1.RANGE 分区:基于属于一个给定连续区间的列值,把多行分配给分区。
2.LIST 分区:类似于按RANGE分区,区别在于LIST分区是基于列值匹配一个离散值集合中的某个值来进行选择。
2.HASH分区:基于用户定义的表达式的返回值来进行选择的分区,该表达式使用将要插入到表中的这些行的列值进行计算。这个函数可以包>含MySQL中有效的、产生非负整数值的任何表达式。
3.KEY分区:类似于按HASH分区,区别在于KEY分区只支持计算一列或多列,且MySQL服务器提供其自身的哈希函数。必须有一列或多列包含>整数值。
 
鉴于i西科数据库数据量增长过程具有一定时间规律,所以选择RANGE类型进行分区。
 
采取策略:、
1、将create_time设置成主键,以create_time进行分区,每格180天进行分区或6个月进行分区。
2、分区命名p20160901(以时间方式进行命名)
3、采用Event定时执行 
CREATE DEFINER=`root`@`localhost`
EVENT `NewEvent`
ON SCHEDULE EVERY 180 DAY STARTS '2016-09-01 01:00:00'
ON COMPLETION PRESERVE
ENABLE
DO
BEGIN
        CALL proc_mc_adjust_partition('mc_stat_trends',30,7);
END;

最新文章

  1. 控制EasyUI DataGrid高度
  2. python 获取日期
  3. shell脚本编译安装LAMP环境
  4. openNebula Image上传
  5. MyEclipse设置编码方式 转载【http://www.cnblogs.com/susuyu/archive/2012/06/27/2566062.html】
  6. DOS 命令 attrib:修改文件属性
  7. C语言宏定义使用技巧
  8. find unique values in an array
  9. jQuery实现父窗口的问题
  10. centos 安装FTP server详情(转)
  11. vs2017添加引用时报错未能正确加载“ReferenceManagerPackage”包。
  12. Python学习笔记6
  13. 应用activeMQ消息中间件同步索引库
  14. windows配置ssh免密登录linux
  15. 安装bootcamp时提示“找不到$winpedriver$文件夹,请验证该文件夹是否和bootcamp处于同一文件夹内?”
  16. keil软件错误总结.doc
  17. 第4章 Selenium2-java WebDriver API (三)
  18. Python之使用PIL实现cv2
  19. python3学习笔记(4)_function-参数
  20. Unity插件-NGUI使用教程

热门文章

  1. Linux soft lockup 和 hard lockup
  2. kubernetes安装部署-day01
  3. Spring Cloud Alibaba | Sentinel: 服务限流基础篇
  4. Java中的单例模式(Singleton Pattern in Java)
  5. SpringMVC面试题:什么是Servlet?
  6. Spring_IoC注解开发和AOP的XML开发(学习笔记2)
  7. luogu题解 P5022 【旅行】
  8. Ansible CMDB
  9. webgl图库研究(包括BabylonJS、Threejs、LayaboxJS、SceneJS、ThingJS等框架的特性、适用范围、支持格式、优缺点、相关网址)
  10. Python基础总结之第十一天开始【再深入一下函数,重新认识一下】(新手可相互督促)