
mysql
文章平均质量分 67
jztr
今天你对我爱理不理,明天我让你高攀不起!
展开
-
mysql之事物
并发事物带来的问题 脏读:一个事物读取到另外个事物修改未提交的数据 丢失修改:两个事物对数据进行了相同的修改 不可重复读:事物提交前重复读取结果不一致(另外个事物可修改数据导致) 幻读:事务的两次查询的结果集记录数不一致(受INSERT和DELETE影响的不可重复读的一种特殊场景) 数据库隔离级别 READ-UNCOMMITTED(读取未提交):最低的隔离级别,允许读取尚未提交的数据变更,可能会导致脏读、幻读或不可重复读。 READ-COMMITTED(读取已提交):允许读取并发事务已经提原创 2022-03-15 17:37:58 · 1582 阅读 · 0 评论 -
mysql之日志
mysql日志主要有:错误日志,慢日志,事物日志,二进制日志等几大类。比较重要的还要属二进制日志binlog(归档日志)和事务日志redo log(重做日志)和undo log(回滚日志) redo log:InnoDB存储引擎,让mysql有奔溃后恢复的能力。 mysql按页读取数据,先查询Buffer Pool,没有命中再去硬盘加载。 mysql更新数据时,发现 Buffer Pool 里存在要更新的数据,就直接在 Buffer Pool 里更新。然后会把“在某个数据页上做了什么修改”记录...原创 2022-03-15 16:14:04 · 1835 阅读 · 0 评论 -
mysql之索引
索引的底层数据结构 mysql中索引分结构分为B+tree和hash两种存储结构 1>.hash:做等值查询("=","IN"和"<=>"查询),不能用做顺序范围查询(因为hash计算过后的索引并不一能保证之前的大小关系),数据大量的hash值相等容易hash碰撞(hashMap通过链地址法解决,后加入变换红黑树);组合索引:不支持模糊匹配(hash值是通过对组合索引计算的) 2>.B+tree:每个叶子节点才存储数据,其他节点存储索引,叶子节点按照从小到大范围排序,可以做范围原创 2022-03-15 11:42:47 · 931 阅读 · 0 评论