![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 88
鲫鱼哥
hello work
展开
-
TIDB和mysql优缺点对比
最近这几年,公司一直在使用mysql,数据量在千万级以下时,mysql有着非常优秀的性能和稳定性。随着数据增长,单表无法满足业务需求,我们需要使用mycat、shading-jdbc等中间件去实现分库分表。分库分表的缺点:分页查询性能不好,需求聚合多库数据,多次io,内存消耗大。分布式事务问题分库之后,想二次扩容,数据迁移等会更复杂跨库join很难实现随着newsql数据库出现,分库分表这些问题都得到解决,newsql特性如下:SQL支持 (TiDB 是 MySQL 兼容的)水平线性原创 2021-08-06 21:10:50 · 16115 阅读 · 0 评论 -
一条sql造成死锁
问题背景 访问量增加,突然大量死锁报警,看日志是一条这样sql:insert into tableName (uid,name) select ?,? from dual where not exists (select 1 from tableName where uid=? and name=?); uid,name有唯一索引。知识点这个问题有几个知识点:insert后面的select会当前读,隐式加锁查询不存在,会降级为间隙锁间隙锁查询不是互斥的,会造成死锁案例分析间隙锁死锁原创 2020-12-10 10:12:33 · 805 阅读 · 0 评论