mysql大型分布式集群 mysql分布式部署 Mycat分库分表 mycat读写分离 MySQL集群与优化 高可用数据架构 mysql分布式事务教程 mysql数据库优化面试

96
java20192019
2018.12.25 16:47 字数 4834

Mysql分布式集群部署mycat分库分表系列(共三套)

系列一:《分布式集群+分库分表实战教程》

本套课程将通过分布式集群和分库分表两部分内容进行讲解

1、主要解决针对大型网站架构中持久化部分中,大量数据存储以及高并发访问所带来是数据读写问题。分布式是将一个业务拆分为多个子业务,部署在不同的服务器上。集群是同一个业务,部署在多个服务器上。

2、着重对数据切分做了细致丰富的讲解,从数据切分的原理出发,一步一步深入理解数据的切分,通过深入理解各种切分策略来设计和优化我们的系统。这部分中我们还用到了数据库中间件和客户端组件来进行数据的切分,让广大网友能够对数据的切分从理论到实战都会有一个质的飞跃。

学完本套课程以后能够达到的效果:

期望通过本课程能帮助大家学习到如何通过分布式+集群的方式来提高io的吞吐量,以及数据库的主从复制,主主复制,负载均衡,高可用,分库分表以及数据库中间件的使用。希望能够帮助大家更加清楚了解架构的工作模式,从而写出更高质量的代码。对于企业的架构人员可以优化企业架构。对于兴趣爱好者,可以作为一个很好的入门。

课程讲解过程中尽可能用简单的语言描述其中的原理,通过实例来帮助初学者快速上手。案例中代码全部手写,实例全部现场真实环境演示。

教程样例项目中用到的技术及相应的环境:

MySQL5.7 CentOS6.9 Vmware Spring3.x以上 JDK8 Maven XShell Xftp

教程中所有的与编程相关均使用Java来进行演示,但与编程语言无关,可使用任何编程语言进行测试。

课程大纲

第1节课程概述 [免费观看] 00:12:22分钟 |

第2节课程背景 [免费观看] 00:09:12分钟 |

第3节纵观大型网站架构发展,总结持久化部分需要应对的问题 [免费观看] 00:27:12分钟 |

第4节操作系统安装以及配置00:31:22分钟 |

第5节在CentOS上通过yum安装mysql5.700:15:32分钟 |

第6节mysql初次见面-mysql5.7的用户以及安全策略00:05:34分钟 |

第7节mysql初次见面续-mysql基本操作00:37:36分钟 |

第8节认识主从复制00:15:01分钟 |

第9节主从复制的准备工作01-mysql用户以及权限00:12:11分钟 |

第10节主从复制的准备工作02-binlog日志详解00:33:23分钟 |

第11节主从实战01-准备环境00:26:06分钟 |

第12节主从实战02-主节点配置00:06:19分钟 |

第13节主从实战03-从节点配置00:10:45分钟 |

第14节java操作主从0100:24:26分钟 |

第15节java操作主从0200:13:48分钟 |

第16节主主复制00:32:23分钟 |

第17节负载均衡概述以及环境准备00:20:42分钟 |

第18节搭建负载均衡-0100:22:54分钟 |

第19节搭建负载均衡-0200:06:06分钟 |

第20节启动haproxy的监控功能00:14:52分钟 |

第21节高可用以及环境准备00:40:14分钟 |

第22节搭建keepalived00:19:42分钟 |

第23节Keepalived配置简介00:11:01分钟 |

第24节Keepalived配置邮件00:42:27分钟 |

第25节Keepalived其他配置00:12:13分钟 |

第26节分库分表概述00:12:18分钟 |

第27节逻辑分表01-水平分表00:32:43分钟 |

第28节逻辑分表02-水平分表续及垂直分表00:13:36分钟 |

第29节表分区00:42:19分钟 |

第30节数据库中间件01-认识mycat00:22:32分钟 |

第31节数据库中间件02-mycat安装00:18:18分钟 |

第32节数据库中间件03-mycat的helloworld00:31:11分钟 |

第33节数据库中间件04-mycat的初识00:13:57分钟 |

第34节数据库中间件05-mycat的数据切分00:13:50分钟 |

第35节数据库中间件06-mycat的读写分离-0100:11:16分钟 |

第36节数据库中间件06-mycat的读写分离-0200:24:06分钟 |

第37节数据库中间件06-mycat的读写分离03-读写分离补充00:03:37分钟 |

第38节数据库中间件07-mycat的高可用-0100:10:01分钟 |

第39节数据库中间件08-mycat的高可用-0200:06:13分钟 |

第40节数据库中间件09-mycat集群00:08:08分钟 |

第41节mysql查询缓存00:08:17分钟 |

第42节数据库切分概述00:37:09分钟 |

第43节java环境配置00:13:42分钟 |

第44节水平切分原理及单表切分后的操作00:47:46分钟 |

第45节水平切分原理及单表切分后的操作-200:19:32分钟 |

第46节水平切分多表关联操作00:38:14分钟 |

第47节垂直切分原理及操作00:17:23分钟 |

第48节全局序列号00:21:35分钟 |

第49节数据库切分策略-分片枚举00:35:49分钟 |

第50节数据库切分策略-hash00:41:16分钟 |

第51节数据库切分策略-范围约定00:17:20分钟 |

第52节数据库切分策略-取模00:13:54分钟 |

第53节数据库切分策略-按日期分片00:17:43分钟 |

第54节全局表00:04:27分钟 |

第55节认识MyCat00:13:55分钟 |

第56节部署MyCat00:20:20分钟 |

第57节使用MyCat完成简单的数据库分片00:28:58分钟 |

第58节MyCat分片策略00:13:08分钟 |

第59节MyCat全局表配置00:05:18分钟 |

第60节MyCatER表配置00:20:27分钟 |

第61节另外一种切分方式-使用客户端组件的方式实现数据库分00:06:20分钟 |

第62节课程总结00:01:56分钟 |

系列二:《mysql分布式部署 Mycat分库分表 mycat读写分离》教程

第1章 课程介绍

课程介绍

1-1 MyCAT导学

1-2 课程介绍

第2章 MyCAT入门

这一章中,我们将回顾了垂直切分,水平切分,分库分表等基础概念,然后快速回如何安装和启动MyCAT的,介绍如何以打包好的可执行程序的方式来启动MyCAT。以及如何对其相关的启动配置文件进行配置。

2-1 章节综述

2-2 什么是MyCAT

2-3 什么是数据库中间层

2-4 MyCAT的主要作用

2-5 MyCAT基本元素

2-6 MyCAT安装

第3章 MYCAT核心配置详解

本章将对MyCAT的常用核心配置文件server.xml、rule.xml以及schema.xml详细讲解,也会对常用的分片算法进行逐一讲解

3-1 章节综述

3-2 常用配置文件间的关系

3-3 server.xml配置详解

3-4 log4j2.xml配置文件

3-5 rule.xml文件详解

3-6 常用分片算法(上)

3-7 常用分片算法(下)

3-8 schema.xml文件用途

3-9 schema定义逻辑库

3-10 table标签

3-11 dataNode标签

3-12 dataHost标签

3-13 dataHost标签属性

3-14 heartbeat标签

3-15 writehost标签

3-16 schema总结

第4章 MYCAT进阶实战之垂直分库

本章将使用配置文件的标签和属性的理论结合实践来让大家明白在一个具体的项目中如何对数据库进行分库分表操作。本章聚焦垂直分库。

4-1 为什么要进行垂直分库和相关步骤

4-2 收集分析业务模块

4-3 MySQL复制的步骤

4-4 MySQL复制环境说明

4-5 MySQL复制实战

4-6 MySQL复制总结

4-7 垂直切分

4-8 垂直切分相关配置

4-9 垂直切分schema文件配置

4-10 垂直切分server文件配置

4-11 后续工作

4-12 MyCAT启动调试

4-13 MyCAT验证配置

4-14 清理多余数据

4-15 跨分片查询

4-16 配置和验证全局表

4-17 垂直切分的优缺点

第5章 MYCAT进阶实战之水平分库

本章将使用配置文件的标签和属性的理论结合实践来让大家明白在一个具体的项目中如何对数据库进行分库分表操作。本章聚焦水平分库。

5-1 水平分库和分片原则

5-2 分片后如何处理查询

5-3 水平分片步骤

5-4 如何选择分片键

5-5 分析业务模型

5-6 部署分片集群

5-7 演示环境说明

5-8 水平切分演示

5-9 全局自增ID

5-10 ER分片

5-11 SQL拦截

5-12 SQL防火墙

第6章 MyCAT高可用集群

成熟稳定的生产系统来说,服务的高可用是最基本的要求,因此本章主要介绍如何使用MyCAT构键一个高可用的系统。

6-1 高可用的基本要求

6-2 当前架构离高可用还有多远

6-3 使用ZK记录MyCAT配置

6-4 部署ZK集群

6-5 初始化ZK并配置MyCAT支持ZK

6-6 Haproxy部署详解

6-7 keepalived安装、配置、验证

6-8 MyCAT读写分离

6-9 MySQL主从配置

6-10 schema.xml配置

6-11 MyCAT读写分离配置

6-12 高可用总结

第7章 MyCAT管理及监控

本章将介绍如何对MYCAT进行管理和监控。主要会涉及到MyCAT的两种主要管理方式。 一种是通过MyCAT管理端口来管理的监控MYCAT。另一种呢则是通过MyCAT-WEB。

7-1 MyCAT管理概述

7-2 MyCAT命令行

7-3 MyCATWeb

第8章 MyCAT集群优化

本章主要学习如何对MyCAT集群进行优化,使其发挥出更好的性能。

8-1 MyCAT集群优化概述

8-2 Linux优化配置

8-3 MyCAT优化配置

8-4 MySQL优化配置

第9章 MyCAT的限制

本章主要介绍MyCAT不适合处理什么样的问题。

9-1 MyCAT限制

第10章 课程总结

课程总结

10-1 –课程总结

系列三:2018最新mysql数据库优化面试 mysql索引面试 MySQL搜索引擎面试 MySQL面试基础知识

第1章 课程介绍

课程内容的整体介绍以及学习建议。

1-1 MySQL面试指南导学

第2章 MySQL版本类问题

在这类问题中主要涉及到了不同MySQL发行版的差别以及如何为业务场景选择不同的发行版本以及如何对现有MySQL版本进行升级这些知识点。对于不同MySQL发行版本之间的差异不仅是运维,架构师和DBA所要关心的,其实由于不同版本所支持的SQL语言的功能也会有所不同,所以也是高级开发人员所要关心的 …

2-1 版本类常见问题

2-2 为什么选择某一MySQL版本

2-3 各个发行版本之间的区别和优缺点

2-4 如何对MySQL进行升级

2-5 最新的MySQL版本特性(上)

2-6 最新的MySQL版本特性(下)

第3章 用户管理类问题

在这类问题中我们所涉及到的知识点主要是如何定义和管理MySQL账号,如何管理MySQL权限密码以及如何对用户权限进行备份,等等用户相关的问题所涉及到的知识点。虽然这看似大部分是DBA的工作,但是开发人员也需要关心MySQL都支持什么样的权限,以及我们平常进行开发时需要什么样的数据库权限才能完成相应的需求。

3-1 -用户管理常见问题

3-2 -给定场景下对用户授权

3-3 -保证数据库账号安全

3-4 迁移数据库账号

第4章 服务器配置类问题

本章我们所要学习的知识点就集中在服务器配置方面,主要是MySQL的一些重要配置参数和方法的讲解。比如SQLMODE的使用以及如何在线修改服务器配置以及如何管理服务器配置等等。SQLMODE的值不仅会影响MySQL所支持的SQL语法还会影响MySQL对数据合规性的检验标准,所以对于中高级开发人员来说,必需要了解这一点,才能解决在向数…

4-1 -服务器配置类问题

4-2 -SQLMode(上)

4-3 -SQLMode(中)

4-4 -SQLMode(下)

4-5 -对比运行时配制

4-6 -MySQL关键参数

第5章 在日志类问题

在本章我们所涉及到的知识点包括了MySQL常用的日志类型以及如何配置和使用这些日志的方法。DBA和运维人员可以利用错误日志来解决数据库的异常问题,开发人员则需要和DBA配合使用慢查日志来对查询进行优化。而其它的日志也各有用途,这些内容我们在下面再详细的梳理 …

5-1 -日志类问题

5-2 -错误日志(上)

5-3 -错误日志(下)

5-4 -常规日志

5-5 -慢查询日志

5-6 -二进制日志(上)

5-7 二进制日志(下)

5-8 -中继日志

5-9 -总结

第6章 存储引擎类问题

存储引擎类问题主要是涉及到了MYSQL常用的存储引擎的选择以及各种存储引擎所适用的场景。当然在这一类问题中我们的重点是INNODB,做为MYSQL最常用的支持事务的存储引擎无论是在开发面试还是在DBA面试中都是被关注的重点

6-1 -存储引擎类问题

6-2 MYISAM

6-3 CSV

6-4 Archive

6-5 Memory

6-6 Innodb

6-7 NDB

6-8 无法在线DDL

6-9 Innodb如何实现事务

6-10 MVCC

6-11 总结

第7章 MySQL架构类问题

本章中所涉及到的知识点比较多主要包括主从复制,高可用架构以及分库分表,数据库中间层等等,是我们课程的重中之重,也是在架构师和DBA面试中的重点内容。

7-1 -高可用架构类问题

7-2 MySQL主从复制

7-3 异步复制

7-4 半同步复制

7-5 比较GTID和日志点复制

7-6 比较MMM和MHA

7-7 MMM架构、故障转移、资源和配置

7-8 MMM优缺点和适用场景

7-9 MHA架构、资源、配置步骤

7-10 MHA部署

7-11 MHA优缺点

7-12 MHA使用场景

7-13 减少主从复制延迟

7-14 MGR复制介绍

7-15 MGR实战

7-16 说说你对MGR复制的理解

7-17 -读写负载问题

第8章 备份恢复类问题

本章内容也是在面试中也是必不可少的。在这门课程中备份恢复类问题所涉及到的知识点主要有MySQL常用的备份工具及备份类型以及如何对MySQL进行增量和指定时间点的备份恢复,如何对binlog进行备份等等,相信通过本章的学习,足以满足你在面试中和工作中所遇到的所有备份问题。 …

8-1 如何对数据库进行备分

8-2 mysqldump实践

8-3 mysqlpump优缺点

8-4 mysqlpump实践

8-5 物理备份:xtrabackup优缺点

8-6 xtrabackup实践

8-7 如何对mysql进行增量备份和恢复(上)

8-8 如何对mysql进行增量备份和恢复(下)

第9章 管理及监控类问题

在这一章中,我们所涉及到的知识点主要有如何对MySQL进行监控以及需要监控那些重要指标,在这里我不会介绍某一款具体的监控工具,因为不同的企业中可能使用的监控工具并不相同,但是对于数据库的监控指标,却是基本相同的。所以我们在这里主要是要学习对关键指标进行监控的方法,知道了这些监控的方法后,放在任何工具中都…

9-1 MySQL常见监控指标

9-2 如何监控QPS

9-3 如何监控TPS和并发数

9-4 如何监控连接数和Innodb缓存命中率

9-5 如何监控数据库可用性

9-6 如何监控阻塞

9-7 如何监控慢查询

9-8 如何监控主从延迟

9-9 如何监控主从状态

9-10 如何监控死锁

第10章 异常处理类问题

这一章中内容在面试中则是来考察大家实际的问题处理能力的问题,在本课程中我会就MySQL常到的主从复制问题,性能问题等来和大家分享一下处理问题的思路和方法。

10-1 MySQL优化及异常处理

10-2 IO负载过大问题

10-3 主从数据不一致

10-4 从无法访问主

10-5 主键冲突

10-6 -RelayLog故障

10-7 -数据库优化概论

第11章 课程总结

对课程进行总结

11-1 课程总结

获取资料联系Q 2844366079

日记本