秦小山的博客

归来饱饭黄昏后,不脱蓑衣卧月明

Mysql-聚簇索引和非聚簇索引的通俗理解

Mysql-聚簇索引和非聚簇索引的通俗理解 [TOC] 简介 聚簇索引:表数据按照索引的顺序来存储的,也就是说索引项的顺序与表中记录的物理顺序一致。对于聚集索引,叶子结点即存储了真实的数据行,不再有另外单独的数据页。 在一张表上最多只能创建一个聚集索引,因为真实数据的物理顺序只能有一种。聚簇索引对于那些经常要搜索范围值的列特别有效。使用聚簇索引找到包含第一个值的行后,便可以确保包...

windows粘贴板失效,不能复制粘贴解决

windows粘贴板失效,不能复制粘贴解决 之前遇到过几次粘贴板失效,检索答案后,90%的都是重启粘贴板进程,但效果却不尽人意,记录一个我自己试过后可以的解决办法: 1 2 3 按下Win+R,运行 cmd.exe /c "echo off | clip" 来清空剪切板,再重试。 有时候小问题让人够头疼的。

读未提交-为什么可以读到别人修改的数据

读未提交-为什么可以读到别人修改的数据 [TOC] 疑惑 ​ 之前在思考数据库隔离级别的时候,读到”脏读”问题,也就是第一次读到的数据跟第二次读到的不一样,这种情况一般发生在数据库隔离级别为RR即repeatable readable,这种情况下既然可能会思考为什么他事务没提交我就能读到数据了呢?这个问题理解的核心在于,数据库事务的提交和数据的修改提交根本不是一回事。 分析 ...

事务-update操作一点观察

事务-update操作一点观察 [TOC] 隔离级别为读已提交 如果数据库的隔离级别是读已提交(Read Committed),这是很多数据库默认的隔离级别。在这种情况下:如果事务要更新一条记录,而这条记录恰好被另一个运行中但未提交事务更改(被锁定或删除),则当前事务会阻塞,等待直到另一个事务提交或回滚后,再继续处理(First Updater Win Rule)。 如果另一个事务回...

Redis 缓存设计原则

Redis 缓存设计原则 [TOC] 基本原则 只应将热数据放到缓存中 所有缓存信息都应设置过期时间 缓存过期时间应当分散以避免集中过期 缓存key应具备可读性 应避免不同业务出现同名缓存key 可对key进行适当的缩写以节省内存空间 选择合适的数据结构 确保写入缓存中的数据是完整且正确的 避免使用耗时较长的操作命令,如:keys * ...