数据库
数据库相关学习
达不溜Q
如果没有奇迹,那就去创造一个!
展开
-
脏读、丢失修改、不可重复读、幻读
导语:最近在准备春招,所以有计划的复习一些数据库相关的知识,小小的整理了一下分享出来。脏读(Dirty read):当一个事务正在访问数据并且对数据进行了修改,而这种修改还没有提交到数据库中,这时另外一个事务也访问了这个数据,然后使用了这个数据。因为这个数据是还没有提交的数据,那么另外一个事务读到的这个数据是“脏数据”,依据“脏数据”所做的操作可能是不正确的。丢失修改(Lost to modify):指在一个事务读取一个数据时,另外一个事务也访问了该数据,那么在第一个事务中修...原创 2021-03-27 10:26:59 · 4103 阅读 · 0 评论 -
数据库事务的特性与事务的隔离级别
导语:最近在准备春招,所以有计划的复习一些数据库相关的知识,小小的整理了一下分享出来。事务的四大特性(ACID):原子性(Atomicity): 事务是最小的执行单位,不允许分割。事务的原子性确保动作要么全部完成,要么完全不起作用; 一致性(Consistency): 执行事务前后,数据保持一致,多个事务对同一个数据读取的结果是相同的; 隔离性(Isolation): 并发访问数据库时,一个用户的事务不被其他事务所干扰,各并发事务之间数据库是独立的; 持久性(Durability): 一个.原创 2021-03-27 10:20:15 · 139 阅读 · 0 评论 -
MySQL 的基本存储结构
导语:最近在准备春招,所以有计划的复习一些数据库相关的知识,小小的整理了一下分享出来。MySQL的基本存储结构是页(记录都存在页里边):多个数据页可以组成一个双向链表 每个数据页中的记录又可以组成一个单向链表 每个数据页都会为存储在它里边儿的记录生成一个页目录 在通过主键查找某条记录的时候可以在页目录中使用二分法快速定位到对应的槽,然后再遍历该槽对应分组中的记录即可快速找到指定的记录 以其他列(非主键)作为搜索条件:只能从最小记录开始依次遍历单链表中的每条记录。...原创 2021-03-27 10:11:09 · 1118 阅读 · 0 评论 -
MylSAM和InnoDB的区别
导语:最近在准备春招,所以有计划的复习一些数据库相关的知识,小小的整理了一下分享出来。两者的对比:是否支持行级锁 : MyISAM 只有表级锁(table-level locking),而InnoDB 支持行级锁(row-level locking)和表级锁,默认为行级锁。 是否支持事务和崩溃后的安全恢复: MyISAM 强调的是性能,每次查询具有原子性,其执行速度比InnoDB类型更快,但是不提供事务支持。但是InnoDB 提供事务支持事务,外部键等高级数据库功能。 具有事务(comm..原创 2021-03-27 10:07:19 · 327 阅读 · 1 评论 -
慢sql优化总结
导语:前一段时间做的一个某干部考核系统,本身系统方面没什么技术难题,主要难点在于项目的业务逻辑比较复杂,所以就设计到了各种查询,在实际使用场景中还是碰到了慢sql问题,前前后后总结了一些,并且结合上一篇sql语句执行顺序问题,食用更佳!SQL语句执行顺序总结个人认为导致SQL语句慢大致可以分为两类:1.查询所需的数据过大:(也就是查询的数据量确实过大) 根据具体情况决定将sql写成一个复杂查询,还是多个简单查询(在Java程序合并结果集) 分解关联查询(分为单表查询,将结果集在J原创 2021-03-25 22:06:34 · 194 阅读 · 0 评论 -
sql语句的执行顺序问题
导语:大三期间选修的数据库课程带我入了sql语句的门,但是实际应用场景中,发现有时候得到的结果,或者查询所花费的时间都不能达到预期效果,于是稍微研究了一下sql语句的执行顺序问题,感觉对于sql语句的书写更加有帮助了,下面是我总结的一点东西,但是可能不全面。select () from () where () order by ();...原创 2021-03-25 18:15:59 · 272 阅读 · 0 评论 -
mysql干净卸载与安装(完整版)
说在前面1.为什么要干净卸载:使用过mysql的人都知道,mysql卸载不干净,可能导致下一次安装失败,这也是小编写这篇文章的初衷。(像如下安装错误就可以通过如下操作解决)mysql干净卸载1.停止MySQL服务:方法一:以管理员身份运行dos黑窗口,输入net stop mysql关闭服务(点左下角小窗户->输入dos->右击命令提示符->以管理员身份运行)输...原创 2019-12-13 22:34:54 · 2027 阅读 · 0 评论