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
- MySQL基础
- MySQL基础
- MySql基础
- MySQL基础
- mysql基础
- MYSQL基础
- MySQL基础
- mysql基础
- mysql基础
- MySQL 基础
- mysql基础
- mysql基础
- mysql 基础
- MySQL基础
- MySql 基础
- mysql基础
- mysql基础
- mysql基础
- 【JavaScript】DOM进阶
- 《启示录》
- bootstrap使用经验点滴
- ds 2.3 击鼓传花
- 编译原理是什么?怎么学?
- MySQL基础
- 中英文对照 —— 互联网、IT(信息科技)、编程
- 算法 N皇后问题
- Mvp理论浅析
- 位运算求平均数
- HTML
- (笔记)Spring MVC学习指南_JSTL
- 参数化查询为什么能够防止SQL注入
- 2-DDL