MySQL按时间拆分千万级大表的实现代码

 更新时间:2023年09月26日 14:40:12   作者:攻城狮悠扬  
这篇文章主要介绍了MySQL按时间拆分千万级大表,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

1.创建存储过程

#-----创建存储过程
CREATE PROCEDURE ctrlcctrlv_table(var VARCHAR(20))
BEGIN
SET @param1 = concat('ALTER TABLE ', var, ' RENAME ', var, DATE_FORMAT(NOW(), '%Y_%m_%d'));
PREPARE stmt FROM @param1;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET @param2 = concat('CREATE table ', var, ' like ', var, DATE_FORMAT(NOW(), '%Y_%m_%d'));
PREPARE stmt1 FROM @param2;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
END;

2.创建EVEN事件

#-----创建存储过程
CREATE PROCEDURE ctrlcctrlv_table(var VARCHAR(20))
BEGIN
SET @param1 = concat('ALTER TABLE ', var, ' RENAME ', var, DATE_FORMAT(NOW(), '%Y_%m_%d'));
PREPARE stmt FROM @param1;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET @param2 = concat('CREATE table ', var, ' like ', var, DATE_FORMAT(NOW(), '%Y_%m_%d'));
PREPARE stmt1 FROM @param2;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
END;

3.启用EVEN

#-----创建存储过程
CREATE PROCEDURE ctrlcctrlv_table(var VARCHAR(20))
BEGIN
SET @param1 = concat('ALTER TABLE ', var, ' RENAME ', var, DATE_FORMAT(NOW(), '%Y_%m_%d'));
PREPARE stmt FROM @param1;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
SET @param2 = concat('CREATE table ', var, ' like ', var, DATE_FORMAT(NOW(), '%Y_%m_%d'));
PREPARE stmt1 FROM @param2;
EXECUTE stmt1;
DEALLOCATE PREPARE stmt1;
END;

4.测试存储过程

#--测试存储过程执行情况
call ctrlcctrlv_table("zong_biao"); 

来点干货在mysql里面测试一下

创建一张测试表

CREATE TABLE `test_cut_demo` (
  `id` int NOT NULL AUTO_INCREMENT,
  `username` varchar(20) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
  `password` varchar(20) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
  `create_time` varchar(20) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL,
  `day` datetime DEFAULT NULL COMMENT '日期',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2997 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

添加一个循环插入的EVENT

#--创建循环测试插入数据
delimiter $$
create event event_insert_SECOND 
on schedule every 2 SECOND  STARTS   CURRENT_TIMESTAMP + INTERVAL 1 MINUTE
COMMENT 'xiaowu create'
do 
    BEGIN
           insert into new_cut.test_cut_demo(username,password,create_time,day) values("李四","tomcat",now(),curdate());
    END $$
delimiter ;
#----红色库名,蓝色表明

添加事件启动

alter event event_insert_SECOND on completion preserve enable; 

查看数据库表中是否开始循环插入数据

MySQL按时间拆分千万级大表

调用存储过程测试是否可以进行表切割

#--测试存储过程执行情况
call ctrlcctrlv_table("test_cut_demo"); 

到此这篇关于MySQL按时间拆分千万级大表的文章就介绍到这了,更多相关MySQL千万级大表内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SQL分页查询存储过程代码分享

    SQL分页查询存储过程代码分享

    本文主要分享了SQL分页查询存储过程的具体实例代码,具有一定的参考价值,需要的朋友一起来看下吧
    2016-12-12
  • mysql增量语句如何修改表的字段

    mysql增量语句如何修改表的字段

    本文介绍了如何在MySQL中实现数据库的增量更新,确保多次执行增量语句不会影响最终结果,通过使用存储过程,解决了MySQL无法直接执行块语句的问题,文章详细描述了增量添加、修改和删除某个字段的操作,并总结了增量语句的编写方法,类似于编写幂等接口
    2024-12-12
  • MySQL 衍生表(Derived Tables)的使用

    MySQL 衍生表(Derived Tables)的使用

    本文主要介绍了MySQL 衍生表(Derived Tables)的使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧方法
    2025-06-06
  • MySQL安装配置以及安装失败解决过程

    MySQL安装配置以及安装失败解决过程

    我们在下载完MYSQL时,安装可能会遇到或大或小的问题,下面这篇文章主要给大家介绍了关于MySQL安装配置以及安装失败解决的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-04-04
  • MySQL执行计划详解

    MySQL执行计划详解

    给大家带来了关于mysql的相关知识,主要介绍了从Mysql源码中分析执行计划,从而知道MySQL是如何处理你的SQL语句的,分析你的查询语句或是表结构的性能瓶颈,需要的朋友可以参考下
    2022-09-09
  • mysql存储过程中使用游标的实例

    mysql存储过程中使用游标的实例

    使用MYSQL存储过程,可以实现诸多的功能,下面将为您介绍一个MYSQL存储过程中使用游标的实例
    2014-01-01
  • MySQL出现错误代码:1055的三种解决方案(推荐!)

    MySQL出现错误代码:1055的三种解决方案(推荐!)

    当我们在查询时使用group by语句,出现错误代码:1055;执行发生错误语句,本文给大家介绍了MySQL出现错误代码:1055的三种解决方案,文中有详细的代码示例和图文供大家参考,需要的朋友可以参考下
    2024-05-05
  • MySQL系列之八 MySQL服务器变量

    MySQL系列之八 MySQL服务器变量

    其中有些参数支持运行时修改,会立即生效;有些参数不支持,且只能通过修改配置文件,并重启服务器程序生效;有些参数作用域是全局的,且不可改变;有些可以为每个用户提供单独(会话)的设置
    2021-07-07
  • 查看和修改MySQL最大连接数的完整步骤

    查看和修改MySQL最大连接数的完整步骤

    MySQL的max_connections是控制服务器同时允许的最大客户端连接数的参数,修改的时候要区分临时生效(重启失效)和永久生效(重启保留),且需结合服务器内存合理设置,避免内存耗尽,以下是完整的查看、修改步骤及注意事项,需要的朋友可以参考下
    2025-12-12
  • MySQL单表约束超详细实战用法(主键 / 非空 / 唯一 / 默认)

    MySQL单表约束超详细实战用法(主键 / 非空 / 唯一 /&nbs

    本文将聚焦 SQL 中的单表约束,详细讲解主键、非空、唯一、默认约束的语法格式与实战用法,结合案例帮你彻底掌握,让数据更规范,感兴趣的朋友跟随小编一起看看吧
    2026-03-03

最新评论