mysql 通过事件定时为数据库创建动态表名
发表于:2024-11-20 作者:千家信息网编辑
千家信息网最后更新 2024年11月20日,#检测事件是否开启show variables like 'event_scheduler';#开启事件(最好在my.init设置,因为重启后还会变回默认值OFF)set global event_s
千家信息网最后更新 2024年11月20日mysql 通过事件定时为数据库创建动态表名
#检测事件是否开启
show variables like 'event_scheduler';
#开启事件(最好在my.init设置,因为重启后还会变回默认值OFF)
set global event_scheduler = on;
#创建事件(从11月24号开始每天执行一次)
create EVENT eve_createTableON SCHEDULE EVERY 1 DAYSTARTS '2016-11-24 00:00:00' ON COMPLETION PRESERVE ENABLEDOCALL pro_createTable();
注:
1、ON
COMPLETION PRESERVE ENABLE 是创建此事件即开始自动执行
2、SCHEDULE EVERY 1 DAY STARTS '2016-11-24 00:00:00' 从指定时间开始每天执行一次
#创建存储过程(动态表名)
CREATE PROCEDURE pro_createTable()BEGINDECLARE str VARCHAR(20000);set str= CONCAT('CREATE TABLE member_network_',DATE_FORMAT(now(),'%Y%m%d'),'(`id` bigint(20) NOT NULL AUTO_INCREMENT ,`member_id` bigint(20) NULL DEFAULT NULL ,`host_ip` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`serv_crc` varchar(2000) CHARACTER SET utf8 COLLATE utf8_bin NULL DEFAULT NULL ,`app_crc` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`sync_time` timestamp NULL DEFAULT NULL ,`online_time` datetime NULL DEFAULT NULL ,`type` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`up_stream_flux` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`down_stream_flux` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`total_stream_flux` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`line_no` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`url` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,`action` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`sev_port` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`sor_port` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`protocol` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`regionCode` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`memo` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`policy` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`dns` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL ,`idcard` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`client_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,PRIMARY KEY (`id`),INDEX `dept_type` (`regionCode`(255), `serv_crc`(255), `online_time`, `name`, `type`(255)) USING BTREE )ENGINE=InnoDBDEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ciAUTO_INCREMENT=1ROW_FORMAT=COMPACT');SET @sqlstr=str;PREPARE stmt from @sqlstr;EXECUTE stmt;deallocate prepare stmt;END;
执行时报错,因为CONCAT拼接超过最大值;
#sql语句查看该参数,修改并重启mysql
show VARIABLES like '%max_allowed_packet%';set global max_allowed_packet = 25600
mysql的前天、今天、后天
#2016-12-09DATE_FORMAT(date_sub(curdate(),interval 1 day),'%Y%m%d')#2016-12-10DATE_FORMAT(date_sub(curdate(),interval 0 day),'%Y%m%d')#2016-12-11DATE_FORMAT(date_sub(curdate(),interval -1 day),'%Y%m%d')
事件
动态
最大
参数
时报
时间
最大值
最好
语句
过程
存储
检测
数据
数据库
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
大兴亦庄微信网络安全
电子科技大学无线互联网作业
数据库$
optaplanner软件开发
党政机关网络安全主要目标
去新华科技互联网学校要带什么
中经网经济统计数据库
广州凡传互联网科技有限公司
中通服网络技术分公司
大连对日软件开发怎么样
广州悦家互联网科技有限公司
杭州应用软件开发费用是多少
计算机网络安全期末试题
传奇私服下载服务器不显示老区
js 数据库主键自增
如何利用报纸数据库
软件开发定制公司成本
域控服务器管理员重命名
系统软件开发的要求
oracle复制数据库
软件开发工资一般多少钱
福建互动安全教育展馆软件开发
网络安全知识答题的报道
比较出名的网络安全社区
网络安全推进工作市长发言稿
中国有多少软件开发者社区
通信与网络技术专业发展方向
手机搭建ftp服务器让别人下载
北京楼控管理软件开发报价
打造高效软件开发团队