加入收藏 | 设为首页 | 会员中心 | 我要投稿 银川站长网 (https://www.0951zz.com/)- 云通信、基础存储、云上网络、机器学习、视觉智能!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

如何利用 MySQL 的事件实现自动分区表

发布时间:2023-11-01 13:17:47 所属栏目:MySql教程 来源:
导读:这篇文章给大家分享的是有关MySQL怎么使用event进行自动分表的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。新单位需要分表处理一个大的日志表。首先,开启event功能。SET GLOBAL even

这篇文章给大家分享的是有关MySQL怎么使用event进行自动分表的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

新单位需要分表处理一个大的日志表。

首先,开启event功能。

SET GLOBAL event_scheduler = 1;

然后根据时间自动创建新表,并将视图更改到新表的查询。

--模拟日志表

create table t1 (id int,log varchar(30));

--模拟视图

create view v_log as select * from t1;

delimiter $$

CREATE EVENT test_event

    ON SCHEDULE

        EVERY 1 second

    STARTS str_to_date('2014-04-14 20:10:00','%Y-%m-%d %T')

    COMMENT '根据日期创建一个新的日志表,并将视图修改为对新日志表的查询'

    DO

        BEGIN

            set @cur_date=replace(curtime(),':','_');

            set @sqltext=concat("create table log_", @cur_date ,"(id int);");

            PREPARE c_tab_stat from @sqltext;

            execute c_tab_stat;    

            set @sqltext=concat("create or replace view v_log as select * from log_",@cur_date,";");

            select @sqltext;

            PREPARE a_view_stat from @sqltext;

            execute a_view_stat;    

        END $$

delimiter ;

感谢各位的阅读!关于“MySQL怎么使用event进行自动分表”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

(编辑:银川站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章