MySQL基础

来源:互联网 发布:windows7摄像头软件 编辑:程序博客网 时间:2024/06/05 20:59

合格DBA具备什么?

1.诚实

2.持续不断的学习能力

3.对技术有浓厚的热情

4.具备专业知识

5.广阔的知识体系

MySQL历史

1.海豚的由来(sakila)

2.1979年Monty写了面向报表的存储引擎工具Unireg

3.1985年MySQLAB的前身在瑞典成立(SAM)

4.1990年Monty准备写一个SQL支持引擎

5.1996年发布了MySQL 1.0

6.1996年10月MySQL3.11.1发布基于Solaris的binary版本

7.1999-2000年MySQLAB在瑞典成立,以GPL方式开放其源代码

8.2000年4月MylSAM引擎出现

9.2001年加入对InnoDB支持,3,23/4.0版本出现

10.2004年10月发布了4.1版本

11.2005年10月发布了5.0版本(支持游标,触发器,存储过程,视图等功能)

12.2008年1月16日被Sun公司收购

13.2009年4月20日Oracle收购Sun公司

14.2010年4月22日MySQL5.5和MySQL Cluster7.1发布

15.2013年2月5日MySQL5.6发布(InniDB性能和复制一致性加强)

16.2014年4月4日MySQL5.7开发里程碑版本(满足网络,云和嵌入式需求,加强性能,扩展性,可靠性和管理)

MySQL逻辑结构

这里写图片描述

1.第一层:服务层(为客户端服务,做请求链接处理,授权认证,安全)

2.第二层:核心层(查询解析,分析,优化,缓存,提供内建函数,存储过程,视图)

3.第三层:存储引擎层(做存取数据)
这里写图片描述

Thread pool

这里写图片描述

认证和安全

这里写图片描述

查询和优化

这里写图片描述

并发控制

  • LOCK(table lock,page lock,row lock)
  • MVCC(多版本并发控制)

事物

  • 事物(Transaction)是访问并可能更新数据库各种数据的一个程序执行单元
  • 在RDBMS中一个事务可以是一个SQL或一组SQL或整个程序
  • 是恢复和并发控制的基本单位

事务ACID

  • A(Atomicity)原子性
  • C(Consistency)一致性
  • I(Isolation)隔离性
  • D(Durability)持久性

四种隔离级别

  • read uncommitted(未提交读)
  • read committed(提交读)
  • repeatable read(可重复读)
  • serializable(可串行化)

存储引擎

  • InnoDB
  • MyISAM
  • memory
  • other

InnoDB

  • 事务性引擎
  • 支持Cluster Index
  • Buffer pool缓存索引和数据
  • row lock

InnoDB应用场景

  • default engine
  • 硬件强劲(内存大,SSD等)
  • 读写比例接近
  • 数据安全性要求高(恢复速度快)
  • 业务高并发

MyISAN

  • 非事务性引擎
  • 数据和索引分开存储(MYI,MYD)
  • Key Buffer只缓存索引
  • table lock

MyISAM应用场景

  • 硬件配置较低(老硬件)
  • 读写比例相差较大,以读为主
  • 统计业务逻辑较多(count操作)

memory

  • 数据全在内存(无落地)
  • table low
  • 高并发低延时

memory应用场景

  • 性能要求高
  • 数据量不大
  • 用于session或cache

other engine

  • Blockhole
  • Federated
  • NDB Cluster
  • Archive
  • Maria
  • MyISAM Merge

认证过程

这里写图片描述

权限管理

这里写图片描述

0 0
原创粉丝点击