数据库基础概念

深碍√TFBOYSˉ_ 2022-10-19 14:58 268阅读 0赞

但是会sql和ER图+背了事务隔离概念,数据库不会挂的

加个重点,主从复制读写分离概念:1个数据库用于写操作,多个数据库只用于读,这是由于写操作少,读操作多,这样能极大的减轻服务器的压力,数据库也能改为redis,这也是集群的基石

阿里数据库的核心概念是分布式集群

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

数据库的三大范式(考试用的

引入范式的原因是为了解决以下问题:

  1. 数据冗余
  2. 更新异常
  3. 插入异常
  4. 删除异常

意思就是按照范式设计表就不会出现上述问题

主属性就是主键

第一范式:当关系模式R的所有属性都不能再分解为更基本的数据单位时,称R是满足第一范式,即属性不可分(有主键表中无表)

第二范式:不存在非主属性对主属性的部分函数依赖

第三范式:不存在非主属性对主属性的传递函数依赖

BCNF: 非主属性对主属性都是完全函数依赖

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

主键外键是为了维护关系完整性(考试用的

主键唯一且非空 为了维护实体完整性

外键要么为空要么对应另一个表主键 参照完整性

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

以下为面试专用

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

悲观锁

当我们要对一个数据库中的一条数据进行修改的时候,为了避免同时被其他人修改,最好的办法就是直接对该数据进行加锁以防止并发。

乐观锁

就是很乐观,每次去拿数据的时候都认为别人不会修改。所以不会上锁,但是如果想要更新数据,则会在更新前检查在读取至更新这段时间别人有没有修改过这个数据。如果修改过,则重新读取,再次尝试更新,循环上述步骤直到更新成功(当然也允许更新失败的线程放弃操作),乐观锁适用于多读的应用类型,这样可以提高吞吐量

行锁 (读写)

表锁

排他锁(互斥?)

间隙锁

自旋锁

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

数据库引擎:数据库是如何存储在电脑中的(这个后续理解深了再加吧)

MyISAM(最常用的引擎,不支持事务
管理的表具有以下特征

使用三个文件表示每个表:

格式文件:存储表的结构 .frm

数据文件:存储表行的内容 .MYD

索引文件:存储表的索引 .MYI

索引都是非聚集索引,索引文件值是指向数据文件的指针

优点

可被转换为压缩文件,节省空间(因为数据都在一个文件

可以转换为只读表提高检索效率(很受web开发喜爱)

缺点

不支持事务,加锁时对整个表加锁,不支持写并发

InnoDB(默认引擎,支持事务
表的结构在.frm文件

数据在tablespace(逻辑概念)空间,无法压缩(数据和索引存在一起,底层是B+树)

优点:

支持事务,行级锁(对表中某行数据加锁)

mysql崩溃后提供自动恢复

支持外键及引用完整性,包括级联删除和更新(拥有外键约束的父子表,删除,更新父表数据,子表自动更新和删除)

(这样可以写并发)

缺点

查询速度三个里面最慢的

MEMORY(不支持事务
缺点:不支持事务,数据和索引存储在内存中,数据容易丢失

优点:快,都是内存上的操作

发表评论

表情:
评论列表 (有 0 条评论,268人围观)

还没有评论,来说两句吧...

相关阅读

    相关 数据库概念

    数据库概念 那Mysql能干嘛呢?它就是一款软件,安装在任何一台计算机或者服务器上的时候,只要我告诉它创建一个文件,新增一个数据,删除一个数据它就能帮我去做想要的操作

    相关 数据库概念

    一、数据库的好处 1、可以持久化数据到本地 2、结构化查询 二、数据库的常见概念 1、DB:数据库,存储数据的容器 2、DBMS:数据库管理系统,又称为数据库软

    相关 数据库基础概念

    但是会sql和ER图+背了事务隔离概念,数据库不会挂的 加个重点,主从复制读写分离概念:1个数据库用于写操作,多个数据库只用于读,这是由于写操作少,读操作多,这样能极大的减轻

    相关 数据库基础概念知识

    今天给大家介绍一下数据库的基础知识,数据库的类型以及数据库的一些基本应用。 数据库的概念\ 什么是数据库?个人理解就是一个存储数据的仓库,官方的定义就是 数据库(Da

    相关 人工智能基础概念

    1.背景 人工智能涉及的内容非常广泛,从数学到计算机科学,有很多的基础知识需要储备,之前打算阅读一些人工智能方面的书籍,总感觉比较吃力,这里会将一些人工智能方面的基础知识做一

    相关 数据库基础概念及操作语句

    数据库是长期存储在计算机内有组的大量的共享的数据集合。它可以供各种用户共享,具有最小的冗余度和较高的数据独立性。数据库系统的核心和基础是数据模型。 数据模型一般由数据结构、数