RDS MySQL 高效设计及性能调优(二)| 学习笔记

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
日志服务 SLS,月写入数据量 50GB 1个月
简介: 快速学习 RDS MySQL 高效设计及性能调优。

开发者学堂课程【RDS MySQL 高效设计及性能调优 :RDS  MySQL  高效设计及性能调优(二)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1209/detail/18176


RDS MySQL 高效设计及性能调优


三、 RDS MySQL 产品系列

RDS MySQL 产品系列目前有三个版本:

1. 基础版:基础版是单节点实例;采用的是计算与存储分离的架构,性价比超高,更适合于个人的学习或者微型的网站或者中小型企业的开发测试环境。

2. 高可用版:采用的是一主一备的经典高可用架构,试用于80%的用户场景,像大中型的生产数据库,互联网、物联网等这些行业的数据库。

3. 三节点企业版:采用的是一主两备的三节点架构,通过多副本的同步复制,确保数据的强一致性,提供金融级的可靠性。对数据安全性要求非常高的金融、证券、保险行业的核心数据或者各大行业企业的核心生产数据,可以使用三节点企业版。

 

四、 RDS MySQL 参数模板

参数模板主要是基于数据安全性和写入性能。

图片2.png

首先了解一下参数的设置。事务提交的刷盘规则:当设置唯一=1的时候,事务提交时,每个事务的日志从缓冲区写到日志的是立刻进行写的,只要有事务完成了,它就会立刻写盘;=2的时候,是随着的操作系统后台每秒进行刷新一次的。在这种场景下,当系统出现崩溃时可能会丢失最后一秒的日志。这两个参数值相比较,=1其实是数据更安全的参数设置。再来看一下 binlog 的刷盘规则,这里它设置的是=n,即可以根据自己的需求,多少次写可以刷一次磁盘,当设置=1的时候是最安全的,就是每一次写入到 binlog ,它都会进行一次刷盘,可以做到及时刷盘。当设置为=10或者=100,它是经过了100次的写操作刷新一次磁盘,这种就是有可能还没有来得及去刷盘的时候,出现系统崩溃,也会存在丢失了日志。

复制模式有半同步复制和异步复制。半同步复制,相对于异步复制多了要将主实例执行完成后的日志同步传输到被实例,被实例收到日志,这个事务才算提交成功。但是异步没有这个动作,只要在主示例执行完成提交之后,这个事务就应当完成了,不需要备库任何的反馈。当半同步数据如果出现了异常的情况下,备实例不可用,传输到备库时备库肯定是没有反馈的,这种场景下超过一定时长,会退化成异步复制。

介绍完三个参数设置之后,来看一下的参数模板:默认的参数是半同步复制加两个都设置为1,即数据安全性最高的参数配置。当使用默认的话,数据的安全性是最高的,但是写入性能相对会较慢一些。异步复制的参数模板,可以在控制台上进行调整,可以根据需求改为异步复制。然后参数设置值也还是保持数据安全性较高的参数配置,这种场景的写入速度也会较快,因为它相对于默认模板里少了一步去被迫去做日志check,即传到的备库日志,备库日志反馈给主实例已经收到这个东西了。这个步骤相对它显露的性能会更高一些。然后还有高性能参数模板,他的复制模式是异步的,当这两个参数数据保护参数设计的都是不是特别安全的参数值,可能会存在数据丢失,数据安全性会比较一般,但是会提升写入性能,因为它将很多写字刷盘的操作进行批量合并的动作,而不是每次写、每次去做刷盘。

 

五、 RDS MySQL 的实战场景

RDS MySQL 实战场景在电商、金融网站、游戏、通用大数据等这些场景都是适用的。

在高并发场景,有热点数据的高并发更新性能的优化、也提供了IP的白名单,防 SQL 注入等;金融场景提供企业级的三节点版本,它能够保证数据常一致性,也满足金融级的可靠性要求,同时也提供双机热备、同城、异地三中心部署的架构,充分满足金融级的合规可靠性的要求;像网站这样的高性价比场景,可以做到开箱即用,高性价比的数据库产品,只要创建实例,同时就具备了全套的备份、恢复监控等一系列的运维方案;在游戏行业的高可用场景下,提供了随时闪回到任意时间点的功能,且计算资源是可弹性伸缩的。主备双节点架构搭配了高安全链路,实现全自动的无感知容灾的切换,然后稳定性也会较好;通用大数据的计算, MySQL 作为在线的数据库存储服务,可以搭配 ADB 、 MapReduce 等这些产品,满足我们日常的日志分析、数据仓库、商业智能等业务,借助于 DTS 或者 Binlog dump 可以订阅 Binlog 的获取我们更新的日志等。

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
SQL 监控 关系型数据库
MySQL性能调优:监控和优化
MySQL性能调优:监控和优化
79 1
|
2月前
|
存储 关系型数据库 MySQL
Linux C/C++ 开发(学习笔记八):Mysql数据库图片存储
Linux C/C++ 开发(学习笔记八):Mysql数据库图片存储
92 0
|
2月前
|
关系型数据库 MySQL 数据库
Linux C/C++ 开发(学习笔记七):Mysql数据库C/C++编程实现 插入/读取/删除
Linux C/C++ 开发(学习笔记七):Mysql数据库C/C++编程实现 插入/读取/删除
76 0
|
25天前
|
SQL Oracle 关系型数据库
MySQL学习笔记
MySQL学习笔记
17 0
|
25天前
|
SQL 关系型数据库 MySQL
MySQL性能调优办法
MySQL性能调优办法
|
18天前
|
SQL 关系型数据库 MySQL
老程序员分享:MySQL性能调优的方法
老程序员分享:MySQL性能调优的方法
13 0
|
24天前
|
SQL 关系型数据库 MySQL
MySQL学习笔记
1. MySQL基础:包括数据库概念、常见DBMS(MySQL、Oracle、SQLServer、SQLite)、安装与管理、服务启动 2. SQL简介:SQL语言含义、语法特点 3. DDL:创建、查询、修改、删除和使用,以及表的创建、查询、删除和修改,涵盖数据类型(int、double、varchar等)。 4. DML:表记录的增、删、改,如INSERT INTO(指定/所有列)、DELETE FROM(WHERE条件/全表)、UPDATE 5. DQL:查询操作,包括基础查询、去重、计算和别名,以及WHERE后的条件(AND、OR、NOT、BETWEEN、IN、LIKE)和模糊查询。
|
2月前
|
SQL 关系型数据库 MySQL
简简单单 My SQL 学习笔记(1)——表中数据的整删改查
简简单单 My SQL 学习笔记(1)——表中数据的整删改查
|
2月前
|
SQL 关系型数据库 MySQL
简简单单 My SQL 学习笔记(2)——分组和简单数据的查询
简简单单 My SQL 学习笔记(2)——分组和简单数据的查询
|
2月前
|
SQL 关系型数据库 MySQL
简简单单 My SQL 学习笔记(3)——连接和嵌套查询
简简单单 My SQL 学习笔记(3)——连接和嵌套查询