第 16 章 MySQL Cluster 前言: MySQL Cluster 是一个基于 NDB Cluster 存储引擎的完整的分布式数据库系统.不仅仅具有高可用性,而且可以自动切分数据,冗余数据等高级功能.和 Oracle Real Cluster Application 不太一样的是,MySQL Cluster 是一个 Share Nothing 的架构,各个 MySQL Server 之间并不共享任何数据,高度可扩展以及高度可用方面的突出表现是其最大的特色. 虽然目前还只是 MySQL…
第10章 MySQL Server性能优化 前言: 本章主要通过针对MySQL Server(mysqld)相关实现机制的分析,得到一些相应的优化建议.主要涉及MySQL的安装以及相关参数设置的优化,但不包括mysqld之外的比如存储引擎相关的参数优化,存储引擎的相关参数设置建议将主要在下一章“常用存储引擎的优化”中进行说明. 10.1 MySQL 安装优化 选择合适的发行版本 1. 二进制发行版(包括RPM等包装好的特定二进制版本) 由于MySQL开源的特性,不仅仅MySQL AB提供了多个平…
第9章 MySQL数据库Schema设计的性能优化 前言: 很多人都认为性能是在通过编写代码(程序代码或者是数据库代码)的过程中优化出来的,其实这是一个非常大的误区.真正影响性能最大的部分是在设计中就已经产生了的,后期的优化很多时候所能够带来的改善都只是在解决前妻设计所遗留下来的一些问题而已,而且能够解决的问题通常也比较有限.本章将就如何在 MySQL 数据库 Schema 设计的时候保证尽可能的高效,尽可能减少后期的烦恼. 9.1 高效的模型设计 最规范的就一定是最合理的吗? 在数据库Sche…
第1章 MySQL 基本介绍 前言:作为最为流行的开源数据库软件之一, MySQL 数据库软件已经是广为人知了. 但是为了照顾对MySQL还不熟悉的读者,这章我们将对 MySQL 做一个简单的介绍.主要内容包括MySQL 各功能模块组成,各模块协同工作原理, Query 处理的流程等. 1.1 MySQLServer 简介 1.1.1 什么是 MySQLMySQL 是由MySQL AB公司(目前已经被SUN公司收归麾下,SUN已经被Oracle收购)自主研发的,目前IT行业最流行的开放源代码的数…
第8章 MySQL数据库Query的优化 前言: 在之前“影响 MySQL 应用系统性能的相关因素”一章中我们就已经分析过了Query语句对数据库性能的影响非常大,所以本章将专门针对 MySQL 的 Query 语句的优化进行相应的分析.     8.1 理解MySQL 的Query Optimizer      8.1.1 MySQL Query Optimizer 是什么? 在“MySQL 架构组成”一章中的 “MySQL 逻辑组成”一节中我们已经了解到,在MySQL中有一个专门负责优化SE…
第7章 MySQL数据库锁定机制 前言: 为了保证数据的一致完整性,任何一个数据库都存在锁定机制.锁定机制的优劣直接应想到一个数据库系统的并发处理能力和性能,所以锁定机制的实现也就成为了各种数据库的核心技术之一.本章将对 MySQL 中两种使用最为频繁的存储引擎 MyISAM 和 Innodb 各自的锁定机制进行较为详细的分析.    7.1 MySQL 锁定机制简介 数据库锁定机制简单来说就是数据库为了保证数据的一致性而使各种共享资源在被并发访问访问变得有序所设计的一种规则.对于任何一种数据库…
第6章 MySQL Server 性能的相关因素 前言 大部分人都一致认为一个数据库应用系统(这里的数据库应用系统概指所有使用数据库的系统)的性能瓶颈最容易出现在数据的操作方面,而数据库应用系统的大部分数据操作都是通过数据库管理软件所提供的相关接口来完成的.所以数据库管理软件也就很自然的成为了数据库应用系统的性能瓶颈所在,这是当前业界比较普遍的一个看法.但我们的应用系统的性能瓶颈真的完全是因为数据库管理软件和数据库主机自身造成的吗?我们将通过本章的内容来进行一个较为深入的分析,让大家了解到一个数…
第4章 MySQL安全管理 前言 对于任何一个企业来说,其数据库系统中所保存数据的安全性无疑是非常重要的,尤其是公司的有些商业数据,可能数据就是公司的根本,失去了数据的安全性,可能就是失去了公司的一切.本章将针对 MySQL 的安全相关内容进行较为详细的介绍. 4.1 数据库系统安全相关因素 一.外围网络: MySQL的大部分应用场景都是基于网络环境的,而网络本身是一个充满各种入侵危险的环境,所以要保护他的安全,在条件允许的情况下,就应该从最外围的网络环境开始“布防”,因为这一层防线可以从最大范…
第3章 MySQL存储引擎简介 3.1 MySQL 存储引擎概述 MyISAM存储引擎是MySQL默认的存储引擎,也是目前MySQL使用最为广泛的存储引擎之一.他的前身就是我们在MySQL发展历程中所提到的 ISAM,是 ISAM的升级版本.在MySQL 最开始发行的时候是ISAM存储引擎,而且实际上在最初的时候,MySQL甚至是没有存储引擎这个概念的.MySQL在架构上面也没有像现在这样的sql layer和storage engine layer 这两个结构清晰的层次结构,当时不管是代码本身…
第2章 MySQL架构组成 前言   麻雀虽小,五脏俱全.MySQL 虽然以简单著称,但其内部结构并不简单.本章从MySQL物理组成.逻辑组成,以及相关工具几个角度来介绍 MySQL 的整体架构组成,希望能够让读者对 MySQL有一个更全面深入的了解. 2.1 MySQL物理文件组成 2.1.1 日志文件 1.错误日志:Error Log 错误日志记录了MyQL Server运行过程中所有较为严重的警告和错误信息,以及MySQL Server每次启动和关闭的详细信息.在默认情况下,系统记录错误日…