你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文概述并介绍了灵活服务器部署模型的核心概念。 有关工作负荷的相应部署选项的信息,请参阅 在 Azure中选择正确的 MySQL Server 选项。
Azure Database for MySQL - 灵活服务器是Microsoft Cloud中完全托管的生产就绪关系数据库服务。 它基于 MySQL 社区版(根据 GPLv2 许可提供)数据库引擎版本 5.6(已停用)、5.7 和 8.0。 通过该服务,可对数据库管理功能和配置设置进行更精细的控制并更灵活操作。 它在各种Azure 区域已普遍可用。
Azure Database for MySQL - 灵活服务器提供:
- 区域冗余和本地冗余高可用性 (HA)。
- 安排维护时段的能力。
- 使用自动备份和时间点还原对数据进行长达 35 天的保护。
- 自动修补和维护基础硬件、操作系统和数据库引擎,帮助使服务保持安全和最新状态。
- 使用非独占即用即付定价,实现可预测性能。
- 在几秒钟内实现弹性缩放。
- 成本优化控制,采用低成本的可突发计算层以及停止和启动服务器的能力。
- 可帮助保护静态和动态敏感数据的企业级安全性、合规性和隐私。
- 监视和自动化,可简化大规模部署的管理。
- 通过多种方式获取支持。
这些功能不需要额外成本,几乎不需要管理。 借助这些功能,用户可将注意力集中在如何快速进行应用开发、加快推向市场,而不需要投入时间和资源来管理虚拟机与基础结构。 此外,可以继续使用选择的开源工具和平台来开发应用程序,以提供业务所需的速度和效率,不需要学习新技能。
Azure Database for MySQL - 灵活服务器还支持预留实例。 如果生产工作负载具有可预测的计算容量要求,则使用预留实例有助于节省成本。
有关 Azure Database for MySQL - Flexible Server 的最新更新,请参阅 Azure Database for MySQL 中的新增功能。
体系结构概述
灵活服务器部署选项提供三个计算层,具有不同的计算和内存容量来支持数据库工作负载:
- “可突发”层最适合用于低成本开发工作负载和不需要持续全计算容量的低并发工作负载。
- 常规用途层和内存优化层更适用于需要高并发性、缩放性和可预测性能的生产工作负荷。
可以花费很少的费用基于可突发层构建第一个应用,然后根据解决方案的需求调整规模。 有关详细信息,请参阅 Azure Database for MySQL - 灵活服务器服务层。
当使用灵活服务器体系结构时,可以选择在单个可用区域内或跨多个可用区域实现高可用性。 灵活服务器最适合用于:
- 轻松部署、简化的缩放,以及备份、高可用性、安全性和监视的低数据库管理开销。
- 需要社区版本的 MySQL 且具有更好的控制和自定义的应用程序开发。
- 具有本地冗余或区域冗余高可用性以及托管维护时段的生产工作负载。
- 简化的开发体验。
12 个月免费产品/服务
使用 Azure 免费帐户,可以使用 Azure Database for MySQL 灵活服务器免费 12 个月。 产品/服务每月限制最高为:
- 可突发 Standard_B1ms 虚拟机的使用时间为 750 小时。 这些小时足以让每个月连续运行一个数据库实例。
- 32 GB 存储和 32 GB 备份存储。
可以使用此产品/服务为灵活服务器开发和部署Azure数据库应用程序。 若要了解如何使用Azure免费帐户创建和使用 Azure Database for MySQL 灵活服务器实例,请参阅本教程。
可用性区域内和跨可用性区域的高可用性
Azure Database for MySQL - 灵活服务器允许使用自动故障转移配置高可用性。 高可用性解决方案可帮助确保提交的数据不会因故障而丢失,并帮助改进应用程序的总体运行时间。
配置高可用性后,灵活服务器会自动预配和管理备用副本。 我们将对主要副本和次要副本的预配计算和存储计费。
有两种高可用性体系结构模型:
区域冗余高可用性:此选项提供完全隔离,并要求跨多个可用性区域配置基础结构冗余。 它提供最高级别的可用性,可抵御可用性区域内的任何基础结构故障,并且可接受整个可用性区域中的延迟。
区域冗余 HA 在支持多个可用性区域和区域冗余高级文件共享的 Azure 区域的 子集中提供。
本地冗余高可用性:此选项提供基础结构冗余,网络延迟较低,因为主服务器和备用服务器都位于同一可用性区域中。 它提供高可用性,且无需跨区域配置应用程序冗余。
本地冗余高可用性(HA)在 所有 Azure 区域 提供,您可以在这些区域创建 Azure Database for MySQL 灵活服务器实例。
有关详细信息,请参阅 Azure Database for MySQL 中的 High-availability。
使用托管维护时段自动修补
该服务执行基础硬件、操作系统和数据库引擎的自动修补。 修补包括安全更新和软件更新。 对于 MySQL 引擎,计划内维护版本还包括次要版本升级。
可以将修补计划配置为系统托管或定义自己的自定义计划。 在维护计划期间,将应用补丁,并且服务器可能需要重启。 使用自定义计划,可以使修补周期可预测,并选择对业务影响最小的维护时段。 该服务遵循持续集成和发布的每月发布计划。
有关详细信息,请参阅 Azure Database for MySQL 中的 计划维护。
自动备份
Azure Database for MySQL灵活服务器服务会自动创建服务器备份并将其存储在用户配置的本地冗余或异地冗余存储中。 可以使用备份将服务器还原到备份保持期内的任何时间点。
可以配置 1 到 35 天的保持期。 默认值为 7 天。 所有备份都通过 AES 256 位加密进行加密。
有关详细信息,请参阅 在 Azure Database for MySQL 中的备份和还原。
网络隔离
若要连接到 Azure Database for MySQL - 灵活服务器,有两个网络选项:
专用访问(虚拟网络集成):您可以将 Azure Database for MySQL 灵活服务器实例部署到 Azure 虚拟网络。 虚拟网络中的各个资源可通过专用 IP 地址进行通信。
如果需要以下功能,请选择虚拟网络集成:
- 使用专用 IP 地址从同一虚拟网络中的Azure资源连接到 Azure Database for MySQL 灵活服务器实例。
- 使用虚拟专用网络(VPN)或 Azure ExpressRoute,将非 Azure 资源连接到您的 Azure Database for MySQL - 灵活服务器实例。
- 避免使用公共终结点。
公共访问(允许的 IP 地址):可以使用公共终结点部署 Azure Database for MySQL 灵活服务器实例。 公共终结点是可公开解析的 DNS 地址。 选择一系列 IP 地址来授予访问服务器的权限。 这些类型的权限称为“防火墙规则”。
有关详细信息,请参阅 Azure Database for MySQL - 灵活服务器的连接和网络概念。
对性能和缩放的快速调整
可以在一个月内花费很少的费用在小型数据库上生成第一个应用,然后无缝调整规模以满足解决方案的需求。 存储缩放处于联机状态,支持 Azure Database for MySQL 灵活服务器的 storage autogrow 功能。
使用 Azure Database for MySQL 的灵活服务器,您可以独立于存储预配超过免费的 IOPS 限制的额外每秒输入/输出操作数(IOPS)。 使用此功能,可以根据工作负载需求随时增加或减少预配的 IOPS 数量。 动态可伸缩性使得数据库能够以透明方式对不断变化的资源需求做出响应。 只需为所使用的资源付费。
有关详细信息,请参阅 Azure Database for MySQL - 灵活服务器服务层。
能够使用只读副本横向扩展读取工作负荷
MySQL 是一种常用的数据库引擎,用于运行 Internet 规模的 Web 和移动应用程序。 Microsoft客户将其用于在线教育、视频流、数字支付解决方案、电子商务平台、游戏服务、新闻门户以及政府和医疗保健网站。 这些服务需要随着 Web 或移动应用程序流量的增加而提供服务和进行扩展。
应用程序通常在 Java 或 PHP 中开发,可以是:
- 迁移到 Azure 虚拟机规模集 或 Azure 应用服务 上运行
- 容器化以在 Azure Kubernetes 服务 (AKS) 上运行
使用具有应用服务或 AKS 地虚拟机规模集作为底层基础结构,可以通过即时预配新的虚拟机并复制应用程序的无状态组件来满足请求,从而简化应用程序的缩放。 但通常,数据库最终会成为一个瓶颈,成为集中式状态组件。
只读副本功能允许将数据从用于 MySQL 的 Azure Database 灵活服务器实例复制至只读服务器。 可将源服务器中的数据复制到最多 10 个副本。
通过 MySQL 引擎的基于二进制日志 (binlog) 文件位置的原生复制技术以异步方式更新副本。 可以使用负载均衡器代理解决方案(如 ProxySQL)将应用程序工作负载无缝扩展到只读副本,而无需任何应用程序重构成本。
有关详细信息,请参阅 Azure Database for MySQL 中的读取副本。
使用数据传入复制的混合或多云数据同步
可以使用 data-in 复制功能将数据从外部 MySQL 服务器同步到 Azure Database for MySQL 灵活服务器。 外部服务器可以位于本地、虚拟机、Azure Database for MySQL - 单一服务器或由其他云提供商托管的数据库服务中。
数据传入复制基于 binlog 文件的位置。 要考虑使用该功能的主要应用场景包括:
- 混合数据同步
- 多云同步
- 最小停机迁移到 Azure 数据库 MySQL - 灵活服务器
有关详细信息,请参阅 将数据复制到 Azure Database for MySQL 灵活服务器。
按需服务器停止/启动
使用 Azure Database for MySQL 灵活服务器,可以按需停止和启动服务器以优化成本。 服务器停止后,计算层计费会立即停止。 此功能可帮助在开发、测试和有时限的可预测生产工作负载期间节省成本。 除非提前重启服务器,否则服务器将保持停止状态 30 天。
有关详细信息,请参阅 Azure Database for MySQL 灵活服务器中的 Server 概念。
企业级安全性、合规性和隐私
Azure Database for MySQL - 灵活服务器使用 FIPS 140-2 验证的加密模块来存储静态数据的加密。 运行查询时创建的数据(包括备份)和临时文件都经过加密。
该服务使用Azure存储加密中包含的 AES 256 位密码,密钥可以系统管理(默认值)。 还可以使用存储在Azure密钥保管库中的客户管理的密钥或托管硬件安全模块进行静态数据加密。 有关详细信息,请参阅 Azure Database for MySQL 的客户管理密钥加密。
Azure Database for MySQL - 灵活服务器使用默认强制实施的传输层安全性(TLS)加密动态数据。 Azure Database for MySQL - 灵活服务器支持使用 TLS 1.2 的加密连接。 使用 TLS 1.0 和 TLS 1.1 的所有传入连接都会被拒绝。 可以通过设置 require_secure_transport 服务器参数,然后设置服务器的最小 tls_version 值来关闭 TLS 强制实施。 有关详细信息,请参阅 通过加密连接连接到灵活服务器的 Azure Database for MySQL。
Azure Database for MySQL - 灵活服务器允许通过 virtual network 集成对服务器进行完全专用访问。 只能通过专用 IP 地址才能访问和连接虚拟网络中的服务器。 使用虚拟网络集成时,将会拒绝公共访问,并且无法通过公共终结点访问服务器。 有关详细信息,请参阅 Azure Database for MySQL - 灵活服务器的连接和网络概念。
监视和警报
Azure Database for MySQL - 灵活服务器具有内置的性能监视和警报功能。 所有Azure指标都有一分钟的频率。 每个指标提供 30 天的历史记录。
可针对指标配置警报。 Azure Database for MySQL - 灵活服务器公开主机服务器指标来监视资源利用率并允许配置慢查询日志。 通过使用这些工具,可快速优化工作负载并配置服务器以获得最佳性能。
在 Azure Database for MySQL 灵活服务器中,可以使用Azure Monitor工作簿可视化慢查询和审核日志数据。 借助工作簿,你可以获得一个灵活的画布,用于分析数据并在Azure门户中创建丰富的视觉报表。 Azure Database for MySQL灵活服务器提供三个工作簿模板:服务器概述、Tutorial:使用 Azure Database for MySQL 灵活服务器配置审核日志和 Tutorial: Query Performance Insight for Azure Database for MySQL。
查询性能见解工作簿通过提供以下信息来帮助减少排查数据库性能问题所花费的时间:
- 排名靠前的长时间运行的查询及其趋势。
- 查询详细信息:查看查询文本以及包含最小、最大、平均和标准偏差查询时间的执行历史记录。
- 资源利用率(CPU、内存和存储)。
此外,可以使用社区监视工具(如 Percona Monitoring and Management 并将其与 Azure Database for MySQL 灵活服务器集成。
有关详细信息,请参阅 Monitor Azure Database for MySQL - 灵活服务器。
Migration
Azure Database for MySQL - 灵活服务器运行 MySQL 的社区版本。 此设计允许完全应用程序兼容性,并且需要最少的重构成本,才能将 MySQL 引擎上开发的现有应用程序迁移到 Azure Database for MySQL 灵活服务器。 可以使用以下选项迁移到 Azure Database for MySQL 灵活服务器。
脱机迁移
当源和Azure之间的网络带宽良好(例如高速 ExpressRoute 连接)时,请使用Azure 数据库迁移服务。 有关分步说明,请参阅 Tutorial:使用 DMS 将 MySQL 迁移到脱机Azure Database for MySQL。
通过 mydumper 和 myloader 来使用压缩设置,以便在低速网络(如公共 Internet)中高效地移动数据。 有关分步说明,请参阅使用 mydumper/myloader 将大型数据库迁移到 Azure Database for MySQL。
联机迁移或停机时间最短的迁移
将数据传入复制与 mydumper/myloader 一致备份和还原配合使用,以便进行初始种子设定。 有关分步说明,请参阅 使用开源工具将 Azure Database for MySQL 从单一服务器迁移到灵活服务器。
若要从 Azure Database for MySQL - 单一服务器迁移到 Azure Database for MySQL - 灵活服务器,请在五个简单的步骤中参考 以下博客。
有关详细信息,请参阅 选择正确的工具以迁移到 Azure Database for MySQL。
Azure区域
在 Azure 中运行工作负荷的一个优点是其全球影响力。 Azure Database for MySQL - 灵活服务器目前在以下Azure区域中可用:
| Region | Availability | 本地冗余 HA | 区域冗余 HA | 异地冗余备份 |
|---|---|---|---|---|
| 澳大利亚中部 | Yes | Yes | No | No |
| Australia East | Yes | Yes | Yes | Yes |
| 澳大利亚东南部 | Yes | Yes | No | Yes |
| 奥地利东部 | Yes | Yes | No | Yes |
| 比利时中部 | Yes | Yes | No | Yes |
| Brazil South | Yes | Yes | Yes | Yes |
| 加拿大中部 | Yes | Yes | Yes | Yes |
| 加拿大东部 | Yes | Yes | No | Yes |
| 印度中部 | Yes | Yes | Yes | Yes |
| 美国中部 | Yes | Yes | Yes | Yes |
| 智利中部 | Yes | Yes | Yes | Yes |
| 中国东部 2 | Yes | Yes | No | Yes |
| 中国东部 3 | Yes | Yes | No | Yes |
| 中国北部 2 | Yes | Yes | No | Yes |
| 中国北部 3 | Yes | Yes | Yes | Yes |
| 丹麦东部 | Yes | Yes | Yes | Yes |
| 东亚(香港特别行政区) | Yes | Yes | Yes | Yes |
| 美国东部 | Yes | Yes | Yes | Yes |
| 美国东部 2 | Yes | Yes | Yes | Yes |
| 法国中部 | Yes | Yes | Yes | Yes |
| 法国南部 | Yes | Yes | No | Yes |
| 德国中西部 | Yes | Yes | Yes | Yes |
| 德国北部 | Yes | Yes | No | Yes |
| 印度尼西亚中部 | Yes | Yes | No | No |
| 以色列中部 | Yes | Yes | Yes | No |
| 意大利北部 | Yes | Yes | Yes | No |
| 日本东部 | Yes | Yes | Yes | Yes |
| 日本西部 | Yes | Yes | Yes | Yes |
| Jio 印度西部 | Yes | Yes | No | No |
| 韩国中部 | Yes | Yes | Yes | Yes |
| 韩国南部 | Yes | Yes | No | Yes |
| 马来西亚西部 | Yes | Yes | Yes | Yes |
| 墨西哥中部 | Yes | Yes | Yes | No |
| 新西兰北部 | Yes | Yes | Yes | No |
| 美国中北部 | Yes | Yes | No | Yes |
| 北欧 | Yes | Yes | Yes | Yes |
| 挪威东部 | Yes | Yes | Yes | Yes |
| 挪威西部 | Yes | Yes | No | No |
| 波兰中部 | Yes | Yes | Yes | No |
| 卡塔尔中部 | Yes | Yes | Yes | No |
| 南非北部 | Yes | Yes | Yes | Yes |
| 南非西部 | Yes | Yes | No | Yes |
| 美国中南部 | Yes | Yes | Yes | Yes |
| 印度南部 | Yes | Yes | No | Yes |
| 东南亚 | Yes | Yes | Yes | Yes |
| 西班牙中部 | Yes | Yes | Yes | Yes |
| 瑞典中部 | Yes | Yes | Yes | No |
| 瑞士北部 | Yes | Yes | Yes | Yes |
| 瑞士西部 | Yes | Yes | No | Yes |
| 台湾北部 | Yes | Yes | No | No |
| 台湾西北 | Yes | Yes | No | No |
| 阿拉伯联合酋长国中部 | Yes | Yes | No | Yes |
| 阿拉伯联合酋长国北部 | Yes | Yes | Yes | Yes |
| 英国南部 | Yes | Yes | Yes | Yes |
| 英国西部 | Yes | Yes | No | Yes |
| USGov 弗吉尼亚州政府 | Yes | Yes | Yes | No |
| US Gov 亚利桑那州 | Yes | Yes | Yes | Yes |
| 美国政府 德克萨斯州 | Yes | Yes | No | Yes |
| 美国中西部 | Yes | Yes | No | Yes |
| 西欧 | Yes | Yes | Yes | Yes |
| 美国西部 | Yes | Yes | No | Yes |
| 美国西部 2 | Yes | Yes | Yes | Yes |
| 美国西部 3 | Yes | Yes | Yes | Yes |
反馈和支持
有关使用 Azure Database for MySQL 灵活服务器的任何问题或建议,请考虑以下联系点:
- 若要联系Azure 支持,在Azure门户中提交请求。
- 要提供反馈或请求新功能,请通过社区反馈发布想法。