
数据库
文章平均质量分 92
布玮
Java、数据库、操作系统、网络、分布式技术总结,还有大厂笔经面经
干过后台,做过前端,上过基础架构
我看好自己的认真
展开
-
MySQL索引原理
1. 概述 如果你有以下疑问,值得往下看: 1、业务ID能保证唯一性,是不是可以考虑不使用自增主键?自增主键和业务ID做主键,底层到底有什么区别? 2、同样是索引,条件中使用主键索引作为条件和非主键索引作为条件,性能一样吗? 3、为什么有人说,对于邮箱地址这种数据比较长的字段,不适合直接创建索引? 4、创建独立字段的索引,查询已经很快,为什么我们还需要考虑创建组合索引?什么场景下需要创建组合索引? 5、覆盖索引和回表是啥意思? 2. 常见问题 阅读正文前,建议大家做个小调研,带着这些问题往下看,参考答案在后原创 2021-06-04 21:52:02 · 739 阅读 · 1 评论 -
数据库事务特性和隔离级别
数据库事务特性(ACID) 原子性 一致性 隔离型 持久性 事务隔离级别 Read-uncommited 未提交读 Read-commited 提交才能读 Repeatable-read 重复读 Serializable 序列化(其实就是加表锁) 点击学习 ...原创 2019-03-14 12:47:54 · 139 阅读 · 0 评论 -
三范式、存储过程、InnoDB和MyISAM区别(数据库面试题)
数据库三范式原创 2019-03-19 10:58:00 · 192 阅读 · 0 评论 -
架构师眼里的分库分表是这样的
数据库单库允许存放的数据量是5000W,超过5000w性能直线下降,解决单库这个瓶颈,可以将多个单库多表拆分到多个库中,最好一库一表,十库十表,百库百表。此过程叫做垂直分库 单表承受量一般是500w~1000w,超过区间,性能下降。解决问题途径:根据表子段分类,不常用,数据量大等字段进行拆分,此过程叫做垂直分表;如果垂直分表之后单表数据量依旧很大,依然存在单表瓶颈,解决问题途径:将数据量水平拆分...原创 2019-06-01 16:51:39 · 692 阅读 · 0 评论 -
数据库索引的原理
文章1 文章2 文章3转载 2019-03-20 11:13:59 · 2613 阅读 · 0 评论 -
带你搞懂for update 和 for update nowait
for update 功能(锁住表和锁住符合条件的行) select * from TTable1 for update 锁定表的所有行,只能读不能写 select * from TTable1 where pkid = 1 for update 只锁定pkid=1的行 select * from Table1 a join Table2 b on a.pkid=b.pkid for updat...原创 2019-07-09 18:35:47 · 3509 阅读 · 0 评论 -
UndoLog、RedoLog、BinLog
UndoLog:对数据进行备份,保证事务的原子性,要们成功,要么失败(提交和回滚) RedoLog:对未提交的数据进行持久化到磁盘,保证事务的持久化,用于服务器宕机后回复服务器数据 BinLog:记录提交&&变更数据事务的日志,可用于主从复制 ...原创 2020-05-23 13:44:08 · 157 阅读 · 0 评论