Mysql数据库大表归档操作
由于公司的某个系统数据表过亿,考虑到数据表的压力。所以根据某个时间点对数据表做了一个归档。以下的操作是在当前的数据库新建表用于存储历史数据,然后再对生产表做一个清理操作。如果有条件的话可以把归档的数据放在一台新的数据库服务器上。(具体的表名和时间结点根据自己需要修改)
归档sql:
方法一: 复制表并且按照条件插入数据(此种方法除了主键索引不包括其他索引)
- CREATE TABLE lime_survey_549656_20151001 as select * from lime_survey_549656 where submitdate < "2015-10-01 00:00:00";
- ALTER TABLE lime_survey_549656_20151001 change id id int primary key auto_increment;
- CREATE TABLE lime_survey_186194_20151001 as select * from lime_survey_186194 where submitdate < "2015-10-01 00:00:00";
- ALTER TABLE lime_survey_186194_20151001 change id id int primary key auto_increment;
- CREATE TABLE lime_survey_279575_20151001 as select * from lime_survey_279575 where submitdate < "2015-10-01 00:00:00";
- ALTER TABLE lime_survey_279575_20151001 change id id int primary key auto_increment;
方法二: 创建一张空表,结构和索引和原表一样
- create table lime_survey_549656_20151001 like lime_survey_549656;
- INSERT INTO lime_survey_549656_20151001 select * from lime_survey_549656 where submitdate < "2015-10-01 00:00:00";
- create table lime_survey_186194_20151001 like lime_survey_186194;
- INSERT INTO lime_survey_186194_20151001 select * from lime_survey_186194 where submitdate < "2015-10-01 00:00:00";
- create table lime_survey_279575_20151001 like lime_survey_279575;
- INSERT INTO lime_survey_279575_20151001 select * from lime_survey_279575 where submitdate < "2015-10-01 00:00:00";
数据归档成功后清理数据sql:
- delete from lime_survey_549656 where submitdate < "2015-10-0100:00:00";
- delete from lime_survey_186194 where submitdate < "2015-10-0100:00:00";
- delete from lime_survey_279575 where submitdate < "2015-10-0100:00:00";
Mysql数据库大表归档操作的更多相关文章
- MySQL在线大表DDL操作
在线大表DDL操作的方法: 1.主从架构轮询修改 需要注意: a.主库会话级别的记录binglog的参数关闭 b.500\502错误异常捕捉 c.检查备库的second behind master是否 ...
- MySQL在线大表DDL操作 (转)
http://www.cnblogs.com/janehoo/p/5382474.html 线大表DDL操作的方法: 1.主从架构轮询修改 需要注意: a.主库会话级别的记录binglog的参数关闭 ...
- mysql数据库建表授权操作
1.create schema [数据库名称] default character set utf8 collate utf8_general_ci;--创建数据库 采用create schema和c ...
- MySQL数据库、表常用操作
1.按条件查询表中数据: mysql> select user,host,password from user; 2.按组合条件查询表中数据: mysql> select id, pass ...
- [MySQL数据库之表的详细操作:存储引擎、表介绍、表字段之数据类型]
[MySQL数据库之表的详细操作:存储引擎.表介绍.表字段之数据类型] 表的详细操作 存储引擎 mysql中建立的库======>文件夹 库中建立的表======>文件 用来存储数据的文件 ...
- MySQL基础学习——SQL对数据库进行操作、对数据库的表进行操作
1.SQL对数据库进行操作: 创建数据库: 语法: create database 数据库名称 [character set 字符集 collate 字符集校对规则];字符集校对规则即所用字符集的数据 ...
- MySQL数据库分表的3种方法
原文地址:MySQL数据库分表的3种方法作者:dreamboycx 一,先说一下为什么要分表 当一张的数据达到几百万时,你查询一次所花的时间会变多,如果有联合查询的话,我想有可能会死在那儿了.分表的目 ...
- Vc数据库编程基础MySql数据库的表查询功能
Vc数据库编程基础MySql数据库的表查询功能 一丶简介 不管是任何数据库.都会有查询功能.而且是很重要的功能.上一讲知识简单的讲解了表的查询所有. 那么这次我们需要掌握的则是. 1.使用select ...
- Mariadb/MySQL数据库单表查询基本操作及DML语句
Mariadb/MySQL数据库单表查询基本操作及DML语句 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一数据库及表相关概述 1>.数据库操作 创建数据库: CREATE ...
随机推荐
- HDU 1875 畅通工程再续 最小生成树问题
题目描述:输入一个T,表示有T组测试数据,然后每组测试数据有一个C,表示在一个湖里面有C座岛屿,现在要在岛屿之间修建桥,可以修建必须满足的条件是岛与岛之间的距离在10到1000的范围内,然后给出每座岛 ...
- 第7月第12天 opengles background
1. After your app exits its applicationDidEnterBackground: method, it must not make any new OpenGL E ...
- asp.net mvc 根据路由生成正确的url
假设存在这样一段路由配置: routes.MapRoute( name: "ProductList1_01", url: "pl/{bigSortId}_{smallSo ...
- python学习之——import sys模块
(1)sys.argv sys模块中的argv变量通过使用点号指明——sys.argv——这种方法的一个优势是这个名称不会与任何在你的程序中使用的argv变量冲突.另外,它也清晰地表明了这个名称是sy ...
- 基础图像处理之混合空间增强——(Java:拉普拉斯锐化、Sobel边缘检测、均值滤波、伽马变换)
相信看过冈萨雷斯第三版数字图像处理的童鞋都知道,里面涉及到了很多的基础图像处理的算法,今天,就专门借用其中一个混合空间增强的案例,来将常见的几种图像处理算法集合起来,看能发生什么样的化学反应 首先,通 ...
- php递归函数细节
<?php /** *php递归函数细节 *从1到5的阶乘 * */ header("Content-Type:text/html;charset=utf-8"); func ...
- HDOJ题目分类
模拟题, 枚举1002 1004 1013 1015 1017 1020 1022 1029 1031 1033 1034 1035 1036 1037 1039 1042 1047 1048 104 ...
- 上传文件异常问题 | 413 Request Entity Too Large
开发中遇到这样的问题:一个上传文件的功能,内网测试都正常了,但是发布到外网就无法上传大点的(大于1MB)文件,更奇怪的是,后台还没有任何的异常信息. 于是就用Http抓包工具(HttpDetect)看 ...
- C#解除文件锁定
public static void StreamsFile(string fi) { try { var p = new Process { StartInfo = { FileName = Env ...
- Java第三阶段学习(五、流的操作规律、Properties流、序列化流与反序列化流、打印流、commons-IO jar包)
一.流的操作规律 四个明确: 明确一:明确要操作的数据是数据源还是数据目的地 源:InputStream Reader 目的地:OutputStream Writer 先根据需求明确是要读还是写 ...