MySQL数据库分区修改【原创】
之前有个表分区添加时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数据库分区修改【原创】的更多相关文章
- MySQL数据库分区的概念与2大好处(1)
我们大家都知道通过MySQL数据库分区(Partition)可以提升MySQL数据库的性能,那么到底什么是MySQL数据库分区呢?以及其实际应用的好处的表现有哪些呢?以下的文章就是对这些内容的描述. ...
- mysql数据库分区功能及实例详解
分区听起来怎么感觉是硬盘呀,对没错除了硬盘可以分区数据库现在也支持分区了,分区可以解决大数据量的处理问题,下面一起来看一个mysql数据库分区功能及实例详解 一,什么是数据库分区 前段时间写过一篇 ...
- Mysql 数据库之修改标的结构
比如我们新建一user表 create table user( id int unsigned auto_increment primary key, name varchar(60) not nul ...
- MySql数据库安装&修改密码&开启远程连接图解
相关工具下载地址: mysql5.6 链接:http://pan.baidu.com/s/1o8ybn4I密码:aim1 SQLyog-12.0.8 链接:http://pan.baidu.com/s ...
- Win7安装mysql数据库、修改默认密码
学习和使用myslq数据库半年时间,mysql对于每一个开发人员都不会陌生.今天对电脑重装系统,为了方面测试在个人PC上安装了mysql数据库.以一下是整个安装过程. 一.下载mysql 1.首先需要 ...
- mysql数据库分区和分表
转载自 https://www.cnblogs.com/miketwais/articles/mysql_partition.html https://blog.csdn.net/vbirdbest/ ...
- windows安装mysql数据库并修改密码
1.下载 MySQL Community Server https://dev.mysql.com/downloads/mysql/ 2.解压 如果想要让MySQL安装在指定目录,那么就将解压后的文件 ...
- mysql数据库如何修改密码及权限分配
如何修改Mysql密码 Mysql用户密码采用md5加密函数加密(单向加密) SELECT PASSWORD('root'); -- *81F5E21E35407D884A6CD4A731AEBFB6 ...
- mysql数据库 安装 (原创)
1.首先下载mysql 数据库,我安装的是mysql5.1版本,直接安装就行,但是如果以后你想在数据库里显示中文的话,要把字符集设置为gb2312 2.配置数据源odbc. mysql-connec ...
随机推荐
- Design Pattern——开放封闭原则
两个特征: 1.对于扩展是开放的 2.对于更改是封闭的 意思就是说:程序在设计的时候,时刻要考虑,尽量让这个类是足够好,写好了就不要去修改了,如果有新的需求来,我们就增加一个类来解决问题,而不要更改原 ...
- 关于C++中的重定位
"标准库定义了4个IO对象,处理输入时使用命名为cin的istream类型对象,这个对象也成为标准输入.处理输出时使用命名为cout的ostream类型对象,这个对象也称为标准输出.标准库还 ...
- hancher57公众号突破3000人
- 使用SQL 从表中取记录
SQL 的主要功能之一是实现数据库查询. 你使用查询来取得满足特定条件的信息. 一个简单的表查询实例 SQL 查询的句法非常简单.假设有一个名为email_table 的表,包含名字和地址两个字段,要 ...
- CF 602C The Two Routes(dij+邻接矩阵)
( ̄▽ ̄)" #include<iostream> #include<cstdio> #include<cmath> #include<algori ...
- ubuntu 调试库
.安装带有调试信息的libc: sudo apt-get install libc6-dbg .下载libc源码 a.选定一个放置源码的目录并进入,如 /home/kent/dev-os/libc6- ...
- PHP7新功能及语法变化总结
1.标量类型声明有两种模式: 强制 (默认) 和 严格模式. 现在可以使用下列类型参数(无论用强制模式还是严格模式): 字符串(string), 整数 (int), 浮点数 (float), 以及布尔 ...
- c++的复制构造函数
在C++中,下面三种对象需要调用拷贝构造函数(有时也称“复制构造函数”): 1) 一个对象作为函数参数,以值传递的方式传入函数体: 2) 一个对象作为函数返回值,以值传递的方式从函数返回: 3) 一个 ...
- 安装unbuntu系统后改回windows引导的方法
1.安装EasyBCD 2.点BCD部署 3.分区:选c盘 4.点击编写MBR 5.点编辑引导菜单 6.确定win10后们的是有勾 7.点击保存设置
- AJAx 刷新页面
<html><head> <meta http-equiv="Content-Type" content="text/html; chars ...