分类 Database 中的文章

MySQL 定时任务

1 创建存储过程 1.1 创建一个存储过程 1 2 3 4 5 6 7 8 9 CREATE PROCEDURE `ClearExpiredData`() BEGIN -- 清理已过期10天的数据 delete from vid_blacklist where expire_time > CAST('2010-10-10' AS DATETIME) and expire_time < SUBDATE(CURDATE(), 10); -- end END 1.2 执行存储过程 1 call ClearExpiredData() 2 数据库定时任务 2.1 创建一次性事件 1 2 3 CREATE EVENT clearEvent ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY DO call ClearExpiredData() 2.2 创建周期性事件 每天早上8点执行一次: 1 2 3 4 5 CREATE EVENT clearEvent ON SCHEDULE EVERY 1 DAY STARTS '2022-01-24 08:00:00' COMMENT '定时清理过期数据' DO call ClearExpiredData(); 2.3 查询数据库 Event 1 select * from information_schema.events where event_name = 'clearEvent' 2.4 删除 Event 1 drop EVENT clearEvent 总结 TODO……

阅读全文

MySQL 数据导入导出

1 DB 回档操作 1.1 mysqldump 备份表数据(不包含建表语句) 1 2 3 4 5 6 7 mysqldump -h10.10.10.10 -P15192 -uroot -pPassword \ --single-transaction \ --default-character-set=utf8 \ --no-create-info \ --skip-disable-keys \ --skip-add-locks \ [database name] [table name1] [table name2] > [dump file] 1.2 恢复数据 执行以下命令前一定要清理原有的数据,要不然会报唯一键冲突的 导入数据之前,最好将线上的表备份一下,然后 delete 清空原表; 最后进行导入,否则原数据不清理,导入的时候会报唯一健冲突。 方式一: 1 #mysql -h10.10.10.10 -P15192 -uroot -pPassword [database name] < [dump file] 方式二: 登陆mysql 然后执行source命令 1 2 3 #mysql -h10.10.10.10 -P15192 -uroot -pPassword > use db_name > source [dump file] 总结……

阅读全文

如何实现 SQL 用户标签的查询?

1 Preface

在社交 APP 中,经常会看到用户标签功能,那么这个功能如何实现呢? 如微信的用户标签。

user-label

考虑两种情况:

  1. 标签的量级较大,我们需要基于 ES 来加速查询;
  2. 标签量级较小,可以使用数据库实现一个简易版的标签功能;

下面我们使用数据库,实现一个简易的标签功能;

……

阅读全文

最近文章

分类

友情链接

标签

其它