0-MySQL基础

MySQL数据库的逻辑结构

连接层是大多数C/S架构系统共有的部分,通常包含连接处理、认证授权、安全等工作。
服务层包含MySQL大多数核心服务,包括查询解析、分析、优化、缓存,以及所有内置函数的处理,还有一些跨存储引擎的功能:存储过程,触发器,视图等。
存储引擎层负责MySQL中数据的存储和提取,服务层通过API和存储引擎进行交互,接口统一定义,能够屏蔽不同的存储引擎,存储引擎不解析SQL,不同存储引擎不会进行通信,存储引擎只会简单地响应服务层的请求。

MySQL基础特性

1、自动提交

MySQL默认采用自动提交(autocommit)模式,也就是说,如果不是显示的开始一个事务,每一条SQL语句都会被当做一个事务来执行提交操作。另外,有一些命令,会导致强制执行commit命令提交当前活动事务,比如可能导致大量数据变更的命令alter table,还有lock table等。

2、两阶段锁定协议(two-phase locking protocol)

innoDB采用的是两阶段锁定协议,两阶段锁定协议是说事务将加锁和解锁操作分离,第一阶段只执行加锁操作,不执行解锁操作,第二阶段只执行解锁操作,不执行加锁操作。innoDB的具体做法是在事务中遇到需要加锁的语句就立即加锁,加锁不成功就等待,在执行完加锁语句后,不立即解锁,而是将所有解锁操作全都集中到commit或rollback操作中,这样所有的锁会在同一时刻被释放。由于加锁阶段没有要求顺序,所以两阶段锁定协议是可能产生死锁的。

3、数据库中schema是什么?

schema的翻译是模式,我们在数据库的语境下有其特定的含义,此时很难望文生义,不同数据库系统对schema的定义也是不完全相同,我们从客户端上看到的几乎就是数据库系统对schema的定义。总体上来讲,schema是数据库对象定义(表,视图)的集合,他不包含数据本身,他描述的是各种数据库对象的定义。只是不同数据库对schema包含的范围不同,例如,MySQL中schema就几乎等同于database,Oracle中,schema只包含database的一部分。

4、

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值