之前有个表分区添加时s201607添加成s201617,所以在查询7月份数据时报错

错误的

alter table statistics_ticket add partition (partition s201617 values less than (201607));

正确的

alter table statistics_ticket add partition (partition s201607 values less than (201607));

因为range的分区没法直接修改,只能先删除最后分区至要修改的分区,在重新添加分区,再添加数据。

具体操作步骤:

1)完整表备份

mysqldump -u root -p'***' -t databasename tablename > /home/statistics_ticket_20160819_1800.sql &

2)7、8月表数据备份不导出结构

mysqldump -u root -p'***' -t databasename tablename --where="FLIGHT_DATE between '2016-07-01' and '2016-08-31'" > /home/statistics_ticket_20160819_0708_data_1800.sql &

在备机上进行完整备份

/home/backup/script/basebackup.bash

3)先统计表有多少行

select count(*) from statistics_ticket where FLIGHT_DATE between '2016-07-01' and '2016-07-31';

select count(*) from statistics_ticket where FLIGHT_DATE between '2016-07-01' and '2016-08-31';

4)删除分区

测试

alter table statistics_ticket drop partition s201901;

alter table statistics_ticket drop partition s201617;

alter table statistics_ticket drop partition s201608;

alter table statistics_ticket drop partition s201609;

alter table statistics_ticket drop partition s201610;

alter table statistics_ticket drop partition s201611;

alter table statistics_ticket drop partition s201612;

alter table statistics_ticket drop partition s201701;

alter table statistics_ticket drop partition s201702;

alter table statistics_ticket drop partition s201703;

alter table statistics_ticket drop partition s201704;

alter table statistics_ticket drop partition s201705;

alter table statistics_ticket drop partition s201706;

alter table statistics_ticket drop partition s201707;

alter table statistics_ticket drop partition s201708;

alter table statistics_ticket drop partition s201709;

alter table statistics_ticket drop partition s201710;

alter table statistics_ticket drop partition s201711;

alter table statistics_ticket drop partition s201712;

alter table statistics_ticket drop partition s201801;

alter table statistics_ticket drop partition s201802;

alter table statistics_ticket drop partition s201803;

alter table statistics_ticket drop partition s201804;

alter table statistics_ticket drop partition s201805;

alter table statistics_ticket drop partition s201806;

alter table statistics_ticket drop partition s201807;

alter table statistics_ticket drop partition s201808;

alter table statistics_ticket drop partition s201809;

alter table statistics_ticket drop partition s201810;

alter table statistics_ticket drop partition s201811;

alter table statistics_ticket drop partition s201812;

alter table statistics_ticket drop partition s201901;

在查看分区添加是否成功

show create table statistics_ticket\G;

5)添加分区

alter table statistics_ticket add partition (partition s201607 values less than (201607));

alter table statistics_ticket add partition (partition s201608 values less than (201608));

alter table statistics_ticket add partition (partition s201609 values less than (201609));

alter table statistics_ticket add partition (partition s201610 values less than (201610));

alter table statistics_ticket add partition (partition s201611 values less than (201611));

alter table statistics_ticket add partition (partition s201612 values less than (201612));

alter table statistics_ticket add partition (partition s201701 values less than (201701));

alter table statistics_ticket add partition (partition s201702 values less than (201702));

alter table statistics_ticket add partition (partition s201703 values less than (201703));

alter table statistics_ticket add partition (partition s201704 values less than (201704));

alter table statistics_ticket add partition (partition s201705 values less than (201705));

alter table statistics_ticket add partition (partition s201706 values less than (201706));

alter table statistics_ticket add partition (partition s201707 values less than (201707));

alter table statistics_ticket add partition (partition s201708 values less than (201708));

alter table statistics_ticket add partition (partition s201709 values less than (201709));

alter table statistics_ticket add partition (partition s201710 values less than (201710));

alter table statistics_ticket add partition (partition s201711 values less than (201711));

alter table statistics_ticket add partition (partition s201712 values less than (201712));

alter table statistics_ticket add partition (partition s201801 values less than (201801));

alter table statistics_ticket add partition (partition s201802 values less than (201802));

alter table statistics_ticket add partition (partition s201803 values less than (201803));

alter table statistics_ticket add partition (partition s201804 values less than (201804));

alter table statistics_ticket add partition (partition s201805 values less than (201805));

alter table statistics_ticket add partition (partition s201806 values less than (201806));

alter table statistics_ticket add partition (partition s201807 values less than (201807));

alter table statistics_ticket add partition (partition s201808 values less than (201808));

alter table statistics_ticket add partition (partition s201809 values less than (201809));

alter table statistics_ticket add partition (partition s201810 values less than (201810));

alter table statistics_ticket add partition (partition s201811 values less than (201811));

alter table statistics_ticket add partition (partition s201812 values less than (201812));

alter table statistics_ticket add partition (partition s201901 values less than (201901));

在查看分区添加是否成功

show create table statistics_ticket\G;

导入数据

source /home/

看统计表有多少行是否和之前的一致

select count(*) from statistics_ticket where FLIGHT_DATE between '2016-07-01' and '2016-07-31';

select count(*) from statistics_ticket where FLIGHT_DATE between '2016-07-01' and '2016-08-31';

6)让用户测试

MySQL数据库分区修改【原创】的更多相关文章

  1. MySQL数据库分区的概念与2大好处(1)

    我们大家都知道通过MySQL数据库分区(Partition)可以提升MySQL数据库的性能,那么到底什么是MySQL数据库分区呢?以及其实际应用的好处的表现有哪些呢?以下的文章就是对这些内容的描述. ...

  2. mysql数据库分区功能及实例详解

    分区听起来怎么感觉是硬盘呀,对没错除了硬盘可以分区数据库现在也支持分区了,分区可以解决大数据量的处理问题,下面一起来看一个mysql数据库分区功能及实例详解   一,什么是数据库分区 前段时间写过一篇 ...

  3. Mysql 数据库之修改标的结构

    比如我们新建一user表 create table user( id int unsigned auto_increment primary key, name varchar(60) not nul ...

  4. MySql数据库安装&修改密码&开启远程连接图解

    相关工具下载地址: mysql5.6 链接:http://pan.baidu.com/s/1o8ybn4I密码:aim1 SQLyog-12.0.8 链接:http://pan.baidu.com/s ...

  5. Win7安装mysql数据库、修改默认密码

    学习和使用myslq数据库半年时间,mysql对于每一个开发人员都不会陌生.今天对电脑重装系统,为了方面测试在个人PC上安装了mysql数据库.以一下是整个安装过程. 一.下载mysql 1.首先需要 ...

  6. mysql数据库分区和分表

    转载自 https://www.cnblogs.com/miketwais/articles/mysql_partition.html https://blog.csdn.net/vbirdbest/ ...

  7. windows安装mysql数据库并修改密码

    1.下载 MySQL Community Server https://dev.mysql.com/downloads/mysql/ 2.解压 如果想要让MySQL安装在指定目录,那么就将解压后的文件 ...

  8. mysql数据库如何修改密码及权限分配

    如何修改Mysql密码 Mysql用户密码采用md5加密函数加密(单向加密) SELECT PASSWORD('root'); -- *81F5E21E35407D884A6CD4A731AEBFB6 ...

  9. mysql数据库 安装 (原创)

    1.首先下载mysql 数据库,我安装的是mysql5.1版本,直接安装就行,但是如果以后你想在数据库里显示中文的话,要把字符集设置为gb2312 2.配置数据源odbc.  mysql-connec ...

随机推荐

  1. excel中的数据导入oracle方法

    SQL_loader批量上传数据 1.    注释 在工作中,很多时候会遇到如下情况:需要将excel中的数据批量上传到ORACLE表中.如果是小数据量,如几十条至几百条,那么用plsql dev工具 ...

  2. openstack私有云布署实践【13.2 网络Neutron-compute节点配置(办公网环境)】

    所有compute节点 下载安装组件   # yum install openstack-neutron openstack-neutron-linuxbridge ebtables ipset -y ...

  3. Oracle第二天

    Oracle第二天 整体安排(3天) 第一天:Oracle的安装配置(服务端和客户端),SQL增强(单表查询). 第二天:SQL增强(多表查询.子查询.伪列-分页),数据库对象(表.约束.序列),Or ...

  4. iOS开发中怎么样使用激光推送

    1.注册激光推送的账号 ----> 创建应用 2.上传推送测试和发布的p12文件  注意密码的填写 3.下载sdk并拖进工程里 4.在build setting 搜索search   把路径改一 ...

  5. MPI发送接收例子

    原文地址:http://blog.csdn.net/ziren235/article/details/1704203 #include"mpi.h" int main(int ar ...

  6. 【Sort】插入排序

    今晚更新几个排序算法 插入排序,时间复杂度O(n^2),从前往后遍历,每遍历到一个值的时候,其前面的所有值已经完成排序,把这个值插入适当位置 void intersort(int *nums,int ...

  7. Arch最小化安装LXDE桌面环境

    安装最小化的LXDE桌面环境: pacman -S lxde-common 安装LXDE Session: pacman -S lxsession 不安装这个没法登录进桌面环境 安装LXDE面板: p ...

  8. Visual Studio 2010 安装帮助文档问题

    今天重装系统,装完VS2010后,如往常一样安装文档,却弹出如下错误"Could not create the local store in the specified folder.... ...

  9. js中的随机数

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  10. sql标识符和格式

    数据库名是一个标识符,表名也是一个标识符,在SQL SERVER中标识符分为两类: (1).常规标识符;(2).分隔标识符两者重要的区别:常规标识符必须严格遵守命名的规定,而分隔标识符则可以不遵守命名 ...