Mysql - 存储过程 - 定时删表】的更多相关文章

在工业监控里面, 需要对每天的数据, 进行记录, 时间长了之后, 数据库很容易撑爆. 这时候, 如果允许, 可以对之前的数据进行一次清除, 只记录几个月内的数据. delimiter $ DROP PROCEDURE if exists p_clearOldData; /* g_date_limit 时间限制, 如 2019_08 , 则删除 该时间之前的表 g_date_length 时间格式的长度, 如 后缀时间是 2019_08, 则此处应该传 7 */ ) , in g_date_len…
1.权限问题 alter routine 编辑或删除存储过程 create routine 建立存储过程 execute 创建存储过程 2.存储过程相关的一些命令 show procedure status\G  查看数据库中有哪些存储过程 show procedure status where db = 'db_name'\G 查看指定数据库(db_name)中有哪些存储过程 select name from mysql.proc where db = 'db_name';  查看指定数据库(…
-- 存储过程创建库  分为两条语句删除和创建DELIMITER $$USE myplan $$DROP PROCEDURE IF EXISTS createDBN $$CREATE PROCEDURE createDBN(IN n INT,IN dbName VARCHAR(100),IN dropSql VARCHAR(255),IN createSql VARCHAR(255))BEGIN  DECLARE i INT DEFAULT 0;  WHILE i<n DO    SET @te…
  转载请注明出处:帘卷西风的专栏(http://blog.csdn.net/ljxfblog)  近期游戏開始第二次内測,開始处理操作日志.最開始把日志放到同一个表里面,发现一天时间,平均100玩家在线.操作记录就超过13万条,决定拆表.依照日期来保存日志.每天的日志存到一个表里面,然后定期把老的数据导出来备份后删掉. 详细思路是写日志的时候,依据当前的时间决定插入到当天的表里面.如表不存在则创建一个新的表.表名里面带上当天的日期.这就涉及到须要在存储过程里面动态创建一个跟日期相关的表.mys…
业务需要,往某个表中批量插入数据,使用存储过程插入 首先,要建立一张mysql表,表明为phone_number, 三个字段,id 自增,number 就是要插入的表格,is_used 表示十分已经使用,默认值为0,未使用 CREATE TABLE `phone_number` ( `id` ) NOT NULL AUTO_INCREMENT, `) NOT NULL, `is_used` ) ' COMMENT '是否已经使用 1 已经使用,0 未使用', PRIMARY KEY (`id`)…
由于测试环境有张日志表没定时2分钟程序就狂插数据,导致不到1一个月时间,这张日志表就占用了6.7G的空间,但是日志刷新较快,有些日志就没什么作用,就写了个定时器,定期删除这张表的数据 首先先查看mysql是否开启定时任务开关 # SHOW VARIABLES LIKE 'event_scheduler'; --------------------- Value为ON则已打开,OFF则关闭 如果是OFF,就先打开: # SET GLOBAL event_scheduler = ON; 然后创建我们…
这个涉及2个步骤,第一个就是建立存储过程: create procedure clear_table() begin drop database XXX end 第二步就是让其定时运行: 查看event是否开启: show variables like '%sche%'; 将事件计划开启: set global event_scheduler=1; 关闭事件任务: alter event e_test ON COMPLETION PRESERVE DISABLE; 开户事件任务: alter e…
CREATE DEFINER=`root`@`%` PROCEDURE `createTables`() begin declare i int; declare suffix varchar(20); declare createsql varchar(2048); set i = 0; while i < 100 do set suffix = hex(i); if length(suffix)<=1 then set suffix = concat('0',hex(i)); end if…
sql语法很多,是一门完整语言.这里仅仅实现一个功能,不做深入研究. 目标:定时更新表或者清空表. 案例:曾经做过定时清空位置信息表的任务.(然而,当时并未考虑服务器挂掉后的情况) 本次测试:每5s更新表字段+1 1.prepare 创建一个表: DROP TABLE IF EXISTS `test_sche`; CREATE TABLE `test_sche` ( `id` int(11) NOT NULL, `counts` int(11) DEFAULT NULL, PRIMARY KEY…
MYSQL定时创建表分区 一.存储过程-表分区-----------------------------------------------------------------需求: 每月创建一个分区 分区名名称格式:p201201,p201202……------------------------------------------ ),)) L_END:BEGIN # 初始化变量 ) ; ) ; ; ) ; ) ; # 查询表分区 最近的一个月的分区() ; IF ISEXIST_PARTI…