2022
我们一起努力

MySQL怎么使用event进行自动分表 - MySQL数据库

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

新单位需要分表处理一个大的日志表。
首先,开启event功能。
SET GLOBAL event_scheduler = 1;
然后根据时间自动创建新表,并将视图更改到新表的查询。

  1. –模拟日志表

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


  3. –模拟视图

  4. create view v_log as select * from t1;



  5. delimiter $$

  6. CREATE EVENT test_event


  7.     ON SCHEDULE


  8.         EVERY 1 second


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


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


  11.     DO


  12.         BEGIN


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


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


  15.             PREPARE c_tab_stat from @sqltext;


  16.             execute c_tab_stat;    


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


  18.             select @sqltext;


  19.             PREPARE a_view_stat from @sqltext;


  20.             execute a_view_stat;    


  21.         END $$


  22. delimiter ;

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

赞(0)
文章名称:《MySQL怎么使用event进行自动分表 - MySQL数据库》
文章链接:https://www.fzvps.com/95017.html
本站文章来源于互联网,如有侵权,请联系管理删除,本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
图片版权归属各自创作者所有,图片水印出于防止被无耻之徒盗取劳动成果的目的。

评论 抢沙发

评论前必须登录!