内容简介
第1章 MySQL架构介绍
1.1 MySQL架构
1.1.1 MySQL物理文件的组成
1.1.2 MySQL各逻辑块简介
1.1.3 MySQL各逻辑块协调工作
1.2 MySQL存储引擎概述
1.3 MySQL各种存储引擎的特性
1.3.1 MyISAM
1.3.2 InnoDB
1.3.3 MEMORY
1.3.4 MERGE
1.3.5 BerkeleyDB存储引擎
1.4 MySQL工具
1.4.1 MySQL命令行实用程序
1.4.2 MySQL Workbench
1.5 本章小结
第2章 MySQL权限与安全
2.1 权限表
2.1.1 user表
2.1.2 db表和host表
2.1.3 tables_priv表和columns_riv表
2.1.4 procs_riv表
2.2 账户管理
2.2.1 登录和退出MySQL服务器
2.2.2 新建普通用户
2.2.3 删除普通用户
2.2.4 root用户修改自己的密码
2.2.5 root用户修改普通用户密码
2.2.6 普通用户修改密码
2.2.7 root用户密码丢失的解决办法
2.3 权限管理
2.3.1 MySQL的各种权限
2.3.2 授权
2.3.3 收回权限
2.3.4 查看权限
2.4 访问控制
2.4.1 连接核实阶段
2.4.2 请求核实阶段
2.5 MySQL的安全问题
2.5.1 操作系统相关的安全问题
2.5.2 数据库相关的安全问题
2.6 使用SSL安全连接
2.7 综合管理用户权限
2.8 小结
第3章 数据备份与还原
3.1 数据备份
3.1.1 使用mysqldump命令备份
3.1.2 直接复制整个数据库目录
3.1.3 使用mysqlhotcopy工具快速备份
3.2 数据还原
3.2.1 使用MySQL命令还原
3.2.2 直接复制到数据库目录
3.2.3 mysqlhotcopy快速恢复
3.3 数据库迁移
3.3.1 相同版本的MySQL数据库之间的迁移
3.3.2 不同版本的MySQL数据库之间的迁移
3.3.3 不同数据库之间的迁移
3.4 表的导出和导入
3.4.1 使用SELECT…INTO OUTFILE导出文本文件
3.4.2 用mysqldump命令导出文本文件
3.4.3 用MySQL命令导出文本文件
3.4.4 使用LOAD DATA INFILE方式导入文本文件
3.4.5 使用mysqlimport命令导入文本文件
3.5 综合实例——数据的备份与恢复
3.6 小结
第4章 MySQL的高级特性
4.1 MySQL查询缓存
4.1.1 认识查询缓存
4.1.2 监控和维护查询缓存
4.1.3 如何检查缓存命中率
4.1.4 优化查询缓存
4.2 合并表和分区表
4.2.1 合并表
4.2.2 分区表
4.3 事务控制
4.4 MySQL分布式事务
4.4.1 了解分布式事务的原理
4.4.2 分布式事务的语法
4.5 小结
第5章 MySQL锁定机制
5.1 MySQL锁定机制概述
5.2 MyISAM表级锁
5.2.1 MyISAM表级锁的锁模式
5.2.2 获取MyISAM表级锁的争用情况
5.2.3 MyISAM表级锁加锁方法
5.2.4 MyISAM Concurrent Insert的特性
5.2.5 MyISAM表锁优化建议
5.3 InnoDB行级锁
5.3.1 InnoDB行级锁模式
5.3.2 获取InnoDB行级锁的争用情况
5.3.3 InnoDB行级锁的实现方法
5.3.4 间隙锁(Net-Key锁)
5.3.5 InnoDB在不同隔离级别下加锁的差异
5.3.6 InnoDB存储引擎中的死锁
5.3.7 InnoDB行级锁优化建议
5.4 小结
第6章 使用MySQL Workbench管理数据库
6.1 MySQL Workbench简介
6.1.1 MySQL Workbench的概述
6.1.2 MySQL Workbench的优势
6.1.3 MySQL Workbench的安装
6.2 SQL Development的基本操作
6.2.1 创建数据库连接
6.2.2 创建新的数据库
6.2.3 创建和删除新的数据表
6.2.4 添加、修改表记录
6.2.5 查询表记录
6.2.6 修改表结构
6.3 Data Modeling的基本操作
6.3.1 建立ER模型
6.3.2 导入ER模型
6.4 Server Administration的基本操作
6.4.1 管理MySQL用户
6.4.2 备份MySQL数据库
6.4.3 还原MySQL数据库
6.5 小结
第7章 SQL性能优化
7.1 优化简介
7.2 MySQL Query Optimizer概述
7.3 SQL语句优化的基本思路
7.4 利用EXPLAIN分析查询语句
7.4.1 EXPLAIN语句的基本语法
7.4.2 EXPLAIN语句分析实例
7.5 利用Profiling分析查询语句
7.6 合理地使用索引
7.6.1 索引对查询速度的影响
7.6.2 如何使用索引查询
7.7 不同类型SQL语句优化方法
7.7.1 优化INSERT语句
7.7.2 优化ORDER BY语句
7.7.3 优化GROUP BY语句
7.7.4 优化嵌套查询
7.7.5 优化OR条件
7.7.6 优化插入记录的速度
7.8 优化数据库结构
7.8.1 将字段很多的表分解成多个表
7.8.2 增加中间表
7.8.3 增加冗余字段
7.9 分析表、检查表和优化表
7.9.1 分析表
7.9.2 检查表
7.9.3 优化表
7.10 小结
第8章 MySQL服务器性能优化
8.1 MySQL源码安装的性能优化
8.2 MySQL服务器配置优化
8.2.1 查看性能参数的方法
8.2.2 key_ buffer size的设置
8.2.3 table cache的设置
8.2.4 内存参数的设置
8.2.5 日志和事务参数的设置
8.2.6 存储和I/O相关参数的设置
8.2.7 其他重要参数的设置
8.3 MySQL日志设置优化
8.4 MySQL I/O设置优化
8.5 MySQL并发设置优化
8.6 线程、Table Cache和临时表的优化
8.6.1 线程的优化
8.6.2 关于table cache相关的优化
8.6.3 关于临时表的优化
8.7 小结
第9章 MySQL性能监控
9.1 基本监控系统方法
9.1.1 ps命令
9.1.2 top命令
9.1.3 vmstat命令
9.1.4 mytop命令
9.1.5 sysstat工具
9.2 开源监控利器Nagios实战
9.2.1 安装Nagios之前的准备工作
9.2.2 安装Nagios主程序
9.2.3 整合Nagios到Apache服务
9.2.4 安装Nagios插件包
9.2.5 监控服务器的CPU、负载、磁盘I/O使用情况
9.2.6 配置Nagios监控MySQL服务器
9.3 MySQL监控利器Cacti实战
9.3.1 Cacti工具的安装
9.3.2 Cacti监控MySQL服务器
9.4 小结
第10章 MySQL Replication
10.1 MySQL Replication概述
10.2 Windows环境下的MySQL主从复制
10.2.1 复制前的准备工作
10.2.2 Windows环境下实现主从复制
10.2.3 Windows环境下主从复制测试
10.3 Linux环境下的MySQL复制
10.3.1 下载并安装MySQL 5.6
10.3.2 单机主从复制前的准备工作
10.3.3 mysqld_ multi实现单机主从复制
10.3.4 不同服务器之间实现主从复制
10.3.5 MySQL主要复制启动选项
10.3.6 指定复制的数据库或者表
10.4 查看Slave的复制进度
10.5 日常管理和维护
10.5.1 了解服务器的状态
10.5.2 服务器复制出错的原因
10.6 切换主从服务器
10.7 小结
第11章 MySQL Cluster实战
11.1 MySQL Cluster概述
11.1.1 MySQL Cluster基本概念
11.1.2 理解MySQL Cluster节点
11.2 Linux环境下MySQL Cluster安装和配置
11.2.1 安装MySQL Cluster 7.2.8 软件
11.2.2 管理节点配置步骤
11.2.3 配置SQL节点和数据节点
11.3 管理MySQL Cluster
11.3.1 Cluster的启动
11.3.2 Cluster的测试
11.3.3 Cluster的关闭
11.4 维护MySQL Cluster
11.4.1 Cluster的日志的管理
11.4.2 Cluster的联机备份
11.4.3 Cluster的数据恢复
11.5 Windows操作系统中配置Cluster
11.6 小结
第12章 企业中MySQL的高可用架构
12.1 MySQL高可用的简单介绍
12.2 MySQL主从复制
12.2.1 MySQL主从架构设计
12.2.2 配置环境
12.2.3 服务器的安装配置
12.2.4 LVS的安装配置
12.3 MySQL+DRBD+HA
12.3.1 什么是DRBD
12.3.2 MySQL+DRBD+HA架构设计
12.3.3 配置环境
12.3.4 安装配置Heartbeat
12.3.5 安装配置DRBD
12.4 Lvs+Keepalived+MySQL单点写入主主同步方案
12.4.1 配置环境
12.4.2 Lvs+Keepalived的安装
12.4.3 Lvs+Keepalived的配置
12.4.4 Master和Backup的启动
12.5 MMM高可用MySQL方案
12.5.1 MMM的架构
12.5.2 配置环境
12.5.3 MMM的安装
12.5.4 Monitor服务器的配置
12.5.5 各个数据库服务器的配置
12.5.6 MMM的管理
12.6 小结