与MySQL的最后一天,我们将和MySQL告别

前言

在我们与MySQL亲密接触的这几天,我们了解的MySQL的前世今生,也和MySQL一起发生了很多有趣的事情,经过这几天的接触我们与MySQL已经变得亲密无间了。人生的道路总是在前进,我们也需要去发现另外的好朋友,也需要看看其他美好的风景,所以我们和MySQL也进行道别,当我们以后需要的时候可以随时回来找到我们的好朋友MySQL。

 事务

概念:

如果一个包含多个步骤的业务操作,被事务管理,那么这些操作要么同时成功,要么同时失败。

数据库引擎

概念:在mysql中的数据用各种不同的技术存储在文件(或内存)中
    操作:
        show engines: 查看mysql支持的存储引擎
 

在这里我们会涉及到一个面试问题:

 MyISAM 与 InnoDB 区别?

 事务的ACID特征

 原子性(Atomicity):是不可分割的最小操作单位,要么同时成功,要么同时失败
     一致性(Consistency):保证数据的状态操作前和操作后保持一致
     隔离性(Isolation):多个事务同时操作相同数据库的同一个数据时,一个事务的执行不受另外一个事务的干扰
     持久性(Durability):当事务提交或回滚后,数据库会持久化的保存数据

事务操作步骤

    1. 开启事务
    2. 编写事务逻辑操作单元
    3. 提交事务或回滚事务 

事务分类

隐式事务:没有明显的开启和结束事务的标志
        insert、update、delete语句本身就是一个事务
    显式事务:具有明显的开启和结束事务的标志
        1. 取消自动提交事务:set autocommit=0;
        2. 开启事务:start transaction;
        3. 提交或回滚事务:
            - commit;
            - rollback;

事务的隔离级别(面试常考) 

这个是有关事务的常考面试题所以我们需要重视

     事务并发问题是如何产生的?
        - 当多个事务同时操作同一个数据库的相同数据时
     事务并发问题
        - 脏读:一个事务读取到了另外一个事务未提交的数据
        - 不可重复读:同一个事务中,多次读取到的数据不一致
        - 幻读:一个事务读取数据时,另外一个事务进行更新,导致第一个事务读取到了没有更新的数据
     处理事务并发问题,设置事务隔离级别
        - READ UNCOMMITTED
        - READ COMMITTED:可以避免脏读
        - REPEATABLE READ:可以避免脏读、不可重复读和一部分幻读
        - SERIALIZABLE:可以避免脏读、不可重复读和幻读
     注意:隔离级别从小到大安全性越来越高,但是效率越来越低
     设置隔离级别
        - set session|global  transaction isolation level 隔离级别名;
     查看隔离级别
        - select @@tx_isolation;

数据库的三大范式

1.第一范式:保证列具有原子性,不可再分

2.第二范式:满足第一范式的基础上,具有唯一性,添加主键外键等,限制表中多对多的关系 

3.第三范式:每列和主键都有直接关系,限制一张表中的一对多关系

具体可以去看看这篇博客。

三大范式_李 子的博客-CSDN博客_三大范式三大范式概念解释: 三大范式其实就是数据库建表的规范。第一范式:要求一张表中的数据每一列都是不可分割的原子项数据第二范式:消除部分依赖,要求一张表中的每一列都完全依赖于主键(针对于组合主键),也就是不会出现某一列只和部分主键相关第三范式:消除传递依赖,要求一张表中的每一列都和主键是直接依赖的,不是间接依赖举例分析:第一范式:要求一张表中的数据每一列都是不可分割的原子项数据例如下面的这张表就是不符合第一范式的,因为家庭信息和学校信息中的数据都不是原子项数据。修改之后:此时所有的https://blog.csdn.net/weixin_42278076/article/details/114112633?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163729010716780366546345%2522%252C%2522scm%2522%253A%252220140713.130102334..%2522%257D&request_id=163729010716780366546345&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~top_click~default-2-114112633.pc_search_mgc_flag&utm_term=%E4%B8%89%E5%A4%A7%E8%8C%83%E5%BC%8F&spm=1018.2226.3001.4187

总结

数据库的学习我们就到此结束,我们在下一次将会踏上另一端征程。

 

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值