首页 > 代码库 > 尖峰MySQL核心技术教学大纲--全套系列

尖峰MySQL核心技术教学大纲--全套系列

 

 2015年尖峰在线MySQL课程 1-2月份安排

 

 

MySQLI实战班   初级DBA(维护方向 48课时)杜兴讲

--2015.1.17 每周六:上午9:00-12:00,下午1:30-16:30

 

MySQLII实战班  中级DBA(优化方向 48课时) 杜兴讲

--2015.1.18 每周日:上午9:00-12:00,下午1:30-16:30

 

 

MySQLIII实战班 高级DBA(架构方向 24课时) 杜兴讲

--2015.2.11 每周三、五 晚20:30-22:30

 

MySQLIV实战班  超级DBA(源码方向 48课时)清风讲

--2015.2.7每周六:上午9:00-12:00,下午1:30-16:30

 

 

师资背景:

     杜兴  前支付宝首席MySQL DBA ,数据库资深专家,经历了支付宝MySQL从小到大的发展进程,对支付宝业务领域有深刻理解,擅长数据库系统优化,数据库架构及设计,有丰富的容量规划经验,几乎了参与所有支付宝光棍节大促核心系统容量规划及评估;运维过1000+集群,对大规模运维有丰富的经验。

  

    清风 国内资深MySQL高级数据库技术专家,现在就职于某大型互联网公司。

  

 


技术分享 

 

 

课程大纲

 

 

一、MySQL I实战班  初级DBA(维护方向 48课时)

               

课程编号

课程章节

内容介绍

1

MySQL基础运维环境准备

1 完成虚拟机安装,推荐使用Oracle VM VirtualBox或者Vmware。

2 完成centos 操作系统安装。

3 完成MySQL 5.6.21版本安装。

4 安装字符端工具putty,SecureCRT

2

MySQL发展前景,主流分支介绍

1 当前主流数据库特点和市场占用率介绍,MySQL数据库与传统数据库优缺点对比。

2 MySQL基础架构及发展历史,主流分支介绍。

3 MySQL主要的特性介绍。

4 MySQL5.6及5.7新特性

讨论: MySQL后续发展前景。

3


MySQL
安装,启动
          

1 yum方式安装MySQL.

2 rpm方式安装MySQL.

3 windows 环境下MySQL 安装。

4 源码安装MySQL

5 MySQL启动,关闭,登陆。

4

MySQL客户端工具

1 命令行工具使用:mysql、mysqlshow、mysqladmin、mysqldump、mysqlslap、
mysqlcheck、perror

2 图形化工具安装及使用:workbench,Sysyog

作业:熟练掌握各项命令行工具。

5

MySQL常用数据类型及函数学习

1 常用整数及浮点数介绍。

2 常用字符串类型介绍。

3 常用类型类型介绍。

4 常用函数介绍。

6

MySQL数据库日常操作

1 数据库用户创建,权限创建及维护。

2 数据库schema创建及维护。

3 数据库不同存储引擎表创建,索引创建及维护。

4 数据库表结构及数据迁移步骤。

故障分析:日常运维工作操作可能导致的一些故障分析及处理方法。

7

MySQL存储过程及触发器 

1 MySQL触发器日常开发及使用。

2 MySQL存储过程日常开发及使用。

讨论: 触发器存储过程日常使用场景讨论。

8

MySQL复制

1 MySQL复制原理介绍。

2 搭建M->S复制结构。

3 搭建双主复制结构。

4 搭建M->S->S级联复制结构

讨论:如何快速的搭建复制结构。

9

MySQL基础监控及报警

1.MySQL 服务器及硬件监控。

2.MySQL 服务层监控。

3.MySQL innodb 监控。

4. MySQL复制状态监控。

4.MySQL 命令行监控介绍。

5.MySQL报警体系。

讨论:如何完善MySQL报警监控体系。

 

 

 


二、MySQL II实战班  中级DBA(优化方向 48课时)

 

课程编号

课程章节

内容介绍

0

MySQL架构介绍

1.MySQL CS服务结构。

2.MySQL 服务层-存储引擎架构。

3.服务器层内存组成、文件目录,日志

4.存储引擎内存,文件目录,日志

讨论:MySQL架构优缺点。

1

MySQL主流存储引擎介绍

1 主流存储引擎特性对比。

2 innodb存储引擎学习。
  
2.1 事务隔离级别及innodb事务模型。
   2.2 事物锁机制介绍,什么叫记录锁和间隙锁,之间主要有什么区别。
   2.3 innodb 多版本控制。
   2.4 innodb死锁检测及回滚,死锁问题如何解决。
   2.5 innodb 表空间管理,如何选择比较适合的表空间。
   2.6 innodb表和索引结构,什么叫聚簇索引和二级索引,它们有什么区别。
   2.7 innodb压缩表介绍。
   2.8 innodb 性能监控,innodb内存锁及存储引擎内部信息监控。
故障分析:innodb 常见故障问题诊断。
讨论: innodb 表索引如何设计?

3 myisam存储引擎学习。

4 memory存储引擎学习。

5 pbxt,tokudb,xtradb等存储引擎简介。

讨论: 不同业务场景下面的存储引擎选型。

2

MySQL备份和恢复

1 MySQL数据库冷备份,热备份方式介绍。

2 逻辑备份及物理备份学习。

3 全量备份及增量日志备份方式学习。

4 逻辑备份和物理备份下的全量恢复及增量恢复。

故障分析: 日常备份恢复案例分析,极端情况下数据恢复工具介绍。

3

MySQL复制

1 复制内部原理讲解。

2 复制在高可用环境中应用。

3 复制各种故障处理。

4 复制管理和维护。

5 复制的高级特性。

故障分析:复制过程中碰到的问题及解决方案。

4

MySQL 优化

1. MySQL查询计划学习。

2. MySQLSchema涉及,表,字段设计优化。

3. MySQL 统计信息,优化器学习。

4. MySQL 查询优化。

讨论:oracle 优化器有MySQL优化器对比

5

数据库升级

1 跨大版本物理升级,小版本物理升级。

2 跨大版本逻辑升级,小版本逻辑升级。

2 跨大版本逻辑升级。

讨论:如何选择稳定的版本进行升级,升级过程中可能碰到的一些问题诊断。

6

MySQL 5.6特性介绍及运用 

5.5与5.6性能对比情况。

2 优化器改进介绍。

3 Nosql 访问接口。

4 传输表空间,GID等特性介绍。

讨论:现在是否考虑升级到5.6?

7

MySQL其他分支介绍

1 percona分支及主要特点学习

2 Maria 分支介绍及主要特点学习

3. google,facebook,淘宝,twitter分支介绍。

讨论:线上环境可以考虑其他的分支么?

8

MySQL cluster学习

MySQL Cluster架构、适用场景介绍

MySQL Cluster布署配置

MySQL Cluster使用

MySQL Cluster管理维护

讨论:什么时候考虑使用Cluster

 

 


三、MySQL III实战班高级DBA(架构方向 24课时)

 

课程编号

题目

主要内容

1

复制高级特性学习

1 复制的速度到底有多快,复制速度主要受那些因素影响。

2 加速复制技术学习,并行复制,复制预热。

3 多主复制学习。

4 Tungsten 复制中间件介绍及使用。

讨论: 并行复制技术的适用场景。

2

数据库优化

1 MySQL的性能取决于那些因素?

2 如何选择合适的CPU

3 内存和磁盘如何配置?

4 raid性能优化,如何优化磁盘队列配置。

5 操作系统选型和文件系统配置优化。

6 应用层缓存设计及数据库访问优化。

7 SQL高级优化。

8 高级innodb设置优化。

讨论:一台MySQL数据库极限性能是多少?

3

大规模集群化运维

1 数据库标准化配置。

2 数据库多实例维护。

3 数据库标准化监控及脚本自动化运维。

4 数据库元数据自动化运维。

讨论: 一个人如何维护1000+实例。

4

数据库架构设计及容量规划

1 数据垂直拆分及水平拆分,什么时候选择进行垂直拆分和水平拆分。

2 如何使用基准测试工具进行简单测试。

3 如何根据实际的业务场景建模。

4 基于业务真实模型的压力测试。

5 数据库空间,性能容量规划及容量建模。

讨论:怎么评估系统需要拆分或扩容?

5

MySQL高可用

MySQL数据库读写高可用。

MySQL MHA 原理及自动切换流程。

讨论:如何缩短业务不可用时间?

 

 

四、MySQL IV实战班  超级DBA (源码方向 48课时)

 

课程编号

题目

主要内容

1

MySQL启动及配置参数初始化源码解析

1 MySQL 服务端启动源码分析。

2 MySQL服务端配置参数初始化源码讲解。

3 Innodb 配置参数初始化源码讲解。

讨论:如何新增一个MySQL参数。

2

MySQL连接管理及
SQL
命令处理源码解析

1 MySQL创建连接源码解析。

2 MySQ网络协议管理。

3 MySQL连接池管理。

4 一条SQL命令处理流程源码分析。

讨论:MySQL连接消耗多少内存?

3

MySQL复制源码解析

1 MySQL binlog日志格式源码分析。

2 MySQL binlog写入机制源码解析。

3 Mysql 主库复制流程源码解析。

4 MySQL备库复制流程源码解析。

5 MySQL binlog日志解析工具源码分析。

讨论: MySQL binlog切换的条件是什么?

4

MySQL 备份工具源码解析

1 MySQL 逻辑备份实现源码分析。

2 MySQL 热备工具源码分析。

讨论:如何选择一个好的备份工具?

5

如何开发一个属于自己的存储引擎?

1 MySQL存储引擎接口介绍。

2 存储引擎接口简单实现。

讨论:一个存储引擎最主要的功能是那些?

6

Innodb 存储引擎源码深度解析

1.innodb 事务实现源码解析。

2.innodb 日志格式源码解析。

3.innodb 多版本实现源码解析。

4.innodb 锁实现机制源码解析。

5.innodb undo实现机制源码解析。

讨论:innodb与oracle实现原理异同。

 

 

欢迎咨询尖峰在线淘宝http://jianfengedu.taobao.com

欢迎加入尖峰MySQL技术交流群: 124788901

尖峰在线培训官方教育YY频道:10799487,定期邀请DBA专家,现场直播传授知识、分享经验、回答疑难问题!

 

尖峰MySQL核心技术教学大纲--全套系列