跳过正文

数据库

2025

MySQL的可重复读怎么这么坑
·5 分钟
后端 数据库 MySQL
一、线上问题:更新一个不存在的值,竟锁住“未来数据”? # 最近朋友遇到一个匪夷所思的线上故障:一条看似普通的 SQL UPDATE user SET status=1 WHERE biz_id=999(假设表中当前最大 biz_id=300),竟然导致后续所有 biz_id > 300 的插入请求全部阻塞!更夸张的是,这个操作甚至锁住了 biz_id=300(存在的记录)的插入请求。​明明更新的值不存在,为何会触发“锁扩散”?​​

2021

mybatis二级Redis缓存
·3 分钟
后端 数据库 Mybatis
这篇文章不是介绍mybatis二级缓存,而是基于我们目前业务一些痛点,思考如何使用mybatis二级Redis缓存,首先mybatis也提供了一个Redis缓存类,但是那个类并不能解决我们目前业务痛点
MySQL Group By 还可以用来去重
·5 分钟
后端 数据库 MySQL
最近在接手老项目的时候,看到一个SQL: select * from xx group by id, 当时一看到这句就感觉,这个group by是不是多余的,既然select 全部了,那去掉其实也无所谓, 然后询问上一个接手的同事才知道这个是用来去重了,好家伙,以前一直用来分组统计的语句竟然可以用来 去重,涨知识了

2017

PostgreSQL的自增键
·3 分钟
后端 数据库 PostgreSQL
平常在Django项目中大量使用自增这个键,平常都是使用ORM,很少去了解这个东西在数据库中具体使用,最近遇到要备份和复原数据的事情,趁着这次好好探索一下这个自增键的使用