这篇文章给大家分享的是有关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进行自动分表”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

dawei

【声明】:商丘站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。