摘要
当下也是数据库技术应用处于激烈变革的时期。这并不是说传统的关系数据库技术在这两年有了多大的新突破,而是用户的需求在迅速变化。更多时候,用户不再需要单一的软件产品,而需要的是灵活、高效、可靠、可控、低廉的解决方案。很多大型站点甚至根据自己的需求来改进 MySQL,进而回馈给开源社区,这也是开放的魅力所在,对于传统的商业数据库软件商来说,这是不可想象的事情。
MySQL早已不再是单一的数据库软件,以其为基础发展起来的各种开源组件令人目不暇接,而用这些组件构成的解决方案也是层出不穷。如何能够把以MySQL为核心的这一系列软件充分运用,构建大型可扩展性网站,正是不少LAMP架构体系的网站开发者乃至架构师一直关心的问题。
关键词 Mysql 架构性能数据库结构
目录
摘要 I
第1章 Mysql基本介绍 3
1.1 Mysql Server简介 3
1.1.1什么是MySQL 3
1.2 Mysql与其他数据库简单的比较 3
1.2.1 功能比较 3
1.3 Mysql主要适用场景 4
1.3.1 web网站系统 4
1.3.2 日志记录系统 4
第2章 Mysql数据库锁定机制 5
2.1 MySQL锁定机制简介 5
2.2 各种锁定机制分析 5
2.2.1 表级锁定 5
2.2.2 读锁定 5
2.2.3 写锁定 6
2.2.4 行级锁定 7
2.3 合理利用锁定机制优化Mysql 9
2.3.1 MyISAM表锁优化建议 9
2.3.2 InnoDB行锁优化建议 11
2.3.3 系统锁定争用情况查询 12
第3章 MySQL可扩展设计的基本原则 13
3.1 什么是扩展性 13
3.2 事务相关性最小原则 14
3.3 数据一致性原则 17
3.4 高可用及数据安全原则 18
第4章可扩展设计之Mysql Replication 20
4.1 Replication对可扩展性设计的意义 20
4.2 Replication机制的实现原理 21
4.2.1 Replicaiont线程 21
4.2.2 复制实现级别 23
4.3 Replication常用架构 24
4.3.1 常规复制架构(Master - Slaves) 25
4.3.2 Dual Master复制架构(Master - Master) 26
4.3.3 级联复制架构(Master – Slaves - Slaves) 27
4.3.4 Dual Master与级联复制结合架构(Master - Master - Slaves) 28
4.4 Replication搭建实现 29
第5章 可扩展性设计之数据切分 34
5.1 何谓数据切分 34
5.2 数据的垂直切分 35
5.3 数据的水平切分 37
5.4 垂直与水平联合切分的使用 38
5.5 数据切分及整合方案 39
5.6 数据切分与整合中可能存在的问题 41
参考文献 44