两年

V1

2023/01/17阅读:20主题:橙心

基础知识总结

”种一棵树最好是十年前,其次是现在“,结合个人十多年IT基础架构领域摸爬滚打的经验来看,数据库领域潜力无限,大有可为。运维领域知识面需要广,更需要专,数据库是我选择做专做深的方向。

今天把之前分享的知识总结一下,基础知识的分享就告一段落了,掌握了基础知识我们就算是入门啦!SQL和事务的知识非常重要,这篇文章里会重点介绍一下。

基础知识回顾

数据库基础知识
数据库基础知识

主要从概述,SQL,函数,约束,多表查询,事务几个方面介绍了mysql的基础知识

SQL是mysql数据库知识大厦中的基石,涉及到数据库相关的业务都需要通过它来实现。后续运维过程中数据库相关的80%的性能优化问题基本都跟它有关!所以SQL的知识需要打扎实,如果通过描述一个需求案例,马上能够在脑海中把实现SQL敲出来,那就说明真正的掌握了

对字符串的一些操作,对时间,日期,数值,流程方面的操作可以使用内置函数高效处理

建表时对每个字段的类型,长度,默认值有要求的话,使用约束来让数据库对插入表中的数据进行检查

很多场景中需要把很多场景的原子操作全部进行完成,整个场景才算结束,如果步骤中某一步骤出问题,或者卡住,则改场景就算失败,需要回滚,这就需要事务这个特性来进行支撑啦

SQL

这里细节的操作命令就不阐述了,主要梳理一下知识结构体系。 把大体的结构体系建立好后,再补充细节血肉,整个知识体系大厦就算构建好了。

SQL体系
SQL体系

DDL: 对数据库,表结构层面的增,删,改,查操作

DML: 对表中的数据层面的增,删,改,查操作

DQL: 对单表,多表查询,联合查询,聚合,分组,分页,排序操作

DCL: 数据库管理员特有的功能,可以对角色和权限进行控制

数据库事务

事务在数据库中扮演着非常重要的作用,它的原子性,一致性等特性能够使得把很多单个操作,拼装成复杂的业务场景。

然后对这个整体的业务场景进行控制,保证其整体成功,如中间某一环节出错,能够整体进行回滚。

数据库事务
数据库事务

事务本身也存在一些天然的问题,比方说处理并发事务时会有:脏读,不可重复读,幻读等问题

针对这些问题数据库产品本身也有解决方案:

  1. 读不提交:三个问题都无法解决,但是性能最好
  2. 读提交:能够解决脏读问题,性能第二
  3. 重复性读:能够解决脏读和不可重复读问题,性能第三
  4. 串行化:能够解决以上三个问题,性能最差
事务隔离级别
事务隔离级别

作者:谷会于(转载请获本人授权,并注明作者与出处)

分类:

后端

标签:

数据库

作者介绍

两年
V1