mysql集群方案

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: mysql集群方案

1 介绍

对于一个互联网项目而言,在mysql这块,主要是分为两种职业:oltp和dba;开发人员和数据库运维人员

我们常常将一个项目分为三个阶段:初期,发展,爆发

1 项目初期:此阶段主要是但结点,需要解决可靠性,单点故障的问题(一般情况下采用主从复制就好了),但是目前我遇到的项目基本上没有,直接单台mysql

2 发展阶段:常见的问题宕机,读写性能问题;主要解决的可用性(合理的时间内提供合理的回复,专业一点说法:多少时间内完成切换),采用什么样的集群方案实现了多长时间的切换。解决方案:读写分离;缓存方式。

3 爆发期:主要解决高扩展性,能进行横向扩展(分库分表,多个主db等)

对于开发人员,需要掌握mysql的知识体系,在dba介入之前的知识体系。

2 主从复制

主从复制作用:使用binlog恢复数据(增量数据);

用来主从复制(replication)

1 原理图

2 具体流程

对于数据库来说,为了提供可用性mysql提供了可以部署多个机制来进行主从复制。master写,slave读。

master服务器而言:主线程接受客户端来写sql语句,当有数据改变的时候写入binlog日志;

slave服务器而言:它是有一个io_thread会去隔一段时间去主服务器从去请求数据,而master会将binlog日志会通过log  dump thread返回给从服务器;从服务器io_thread接收到,会将数据丢写入到中继日志(relay  log)。从服务器中还有一个数据sql thread会将中继日志回放一遍放入数据库中。

3 binlog

产生时机,事务提交后;重启生成新的binlog;

flush logs 生成新的binlog;

4 配置开启使用

[mysqld]
log-bin=mysql-bin
# 每提交n次事务,MySQL将进行一次fsync之类的磁盘同步指令来将binlog_cache中的数据强制写入
磁盘。
sync_binlog=1
# 开启两段式事务提交
# 1.prepare,先将redolog持久化到磁盘;
# 2.prepare成功,再将事务日志持久化到binlog;
# 3.再在redolog上持久化commit操作;
innodb_support_xa=1

4 总结

1 binlog 文件会随服务的启动创建一个新文件;

2.通过 flush logs 可以手动刷新日志,生成一个新的 binlog 文件;

3.通过 show master status 可以查看 binlog 的状态;

4.通过 reset master 可以清空 binlog 日志文件;

5.通过 mysqlbinlog 工具可以查看 binlog 日志的内容;

6.通过执行 DML 操作,mysql 会自动记录 binlog;

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
5月前
|
存储 关系型数据库 MySQL
Mysql集群
Mysql集群
101 0
|
12月前
|
SQL 存储 关系型数据库
MySQL主从复制之原理&一主一从部署流程—2023.04
MySQL主从复制之原理&一主一从部署流程—2023.04
375 0
|
2月前
|
存储 负载均衡 关系型数据库
MySQL集群
【8月更文挑战第16天】MySQL集群
36 5
|
2月前
|
SQL 负载均衡 关系型数据库
*配置MySQL集群
【8月更文挑战第16天】*配置MySQL集群
40 2
|
5月前
|
SQL canal 运维
MySQL高可用架构探秘:主从复制剖析、切换策略、延迟优化与架构选型
MySQL高可用架构探秘:主从复制剖析、切换策略、延迟优化与架构选型
|
5月前
|
关系型数据库 MySQL 数据库
MySQL集群 双主架构(配置命令)
MySQL集群 双主架构(配置命令)
|
存储 SQL 运维
Mysql集群方案概述
1: 主从 方案 MysqlReplication 2: 主从可重选举方案 MysqlFabirc 3: 多主多从方案 Mysql Cluster
383 1
|
SQL 存储 运维
MySQL主从复制与读写分离(详细部署案例)
MySQL主从复制与读写分离(详细部署案例)
299 0
|
SQL 缓存 网络协议
深入理解MySQL主从复制原理以及集群部署流程
主从复制是指将主数据库的 DDL 和 DML 操作通过二进制日志传到从库服务器中,然后在从库上对这些日志重新执行(也叫重做),从而使得从库和主库的数据保持同步。 MySQL支持一台主库同时向多台从库进行复制, 从库同时也可以作为其他从服务器的主库,实现链状复制。
517 0
|
SQL 容灾 关系型数据库
大厂都在用的MySQL主从复制、读写分离及高可用方案(下)
大厂都在用的MySQL主从复制、读写分离及高可用方案(下)
502 0
大厂都在用的MySQL主从复制、读写分离及高可用方案(下)