Azure Database for MySQL 单一服务器中有哪些新增内容?

适用于:Azure Database for MySQL - 单一服务器

重要

Azure Database for MySQL 单一服务器即将停用。 强烈建议升级到 Azure Database for MySQL 灵活服务器。 有关如何迁移到 Azure Database for MySQL 灵活服务器的详细信息,请参阅 Azure Database for MySQL 单一服务器发生了什么情况?

Azure Database for MySQL 是 Azure 云中的一项关系数据库服务。 该服务基于 MySQL 社区版(可在 GPLv2 许可下使用)数据库引擎,并支持版本 5.6(已停用)、5.7 和 8.0。 Azure Database for MySQL 单一服务器是一种部署模式,可提供完全托管的数据库服务,对数据库自定义的要求最低。 单一服务器平台旨在以最少的用户配置和控制来处理大多数数据库管理功能,例如修补、备份、高可用性和安全性。

本文总结了自 2021 年 1 月开始的 Azure Database for MySQL 单一服务器中的新版本和功能。 列表按时间倒序排列,最新更新排在最前。

2022 年 5 月

已启用通过门户/CLI 更改服务器参数 innodb_ft_server_stopword_table 的功能。 用户现在可以使用 Azure 门户和 CLI 更改 innodb_ft_server_stopword_table 参数的值。 此参数有助于为所有 InnoDB 表配置自己的 InnoDB FULLTEXT 索引非索引字列表。 有关详细信息,请参阅

2022 年 3 月

此版本的 Azure Database for MySQL 单一服务器包括以下更新。

Bug 修复

现在,MySQL 8.0.27 客户端和更高版本与 Azure Database for MySQL - 单一服务器兼容。

2022 年 2 月

此版本的 Azure Database for MySQL 单一服务器包括以下更新。

2021 年 12 月

此版本的 Azure Database for MySQL 单一服务器包括以下更新:

  • “查询性能见解”中删除的“查询文本”,用于避免未经授权的访问

从 2021 年 12 月开始,在 Azure 门户中“查询性能见解”边栏选项卡中将无法查看查询的查询文本。 删除查询文本是为了避免对查询文本或基础架构未经授权的访问,因为这可能会带来安全风险。 下面分享查看查询文本的建议步骤:

  • 从 Azure 门户中的“查询性能见解”边栏选项卡中找出最多次查询的 query_id

  • 从 MySQL 工作台或 mysql.exe 客户端或你首选的查询工具登录到 Azure Database for MySQL 服务器,然后执行以下查询

    SELECT * FROM mysql.query_store where query_id = '<insert query id from Query performance insight blade in Azure portal';  // for queries in Query Store
    SELECT * FROM mysql.query_store_wait_stats where query_id = '<insert query id from Query performance insight blade in Azure portal';  // for wait statistics 
    
  • 可以浏览 query_digest_text 列,以发现相应的 query_id 的查询文本

以上步骤将确保只有经过身份验证的和经过授权的用户才能安全地访问查询文本。

2021 年 10 月

  • 已知问题

MySQL 8.0.27 客户端与 Azure Database for MySQL 单一服务器不兼容。 通过 mysql.exe 或 Workbench 创建的 MySQL 8.0.27 客户端的所有连接都会失败。 请考虑使用更早版本(早于 MySQL 8.0.27)的客户端或改为创建 Azure Database for MySQL 灵活服务器的实例,这是一种解决方法。

2021 年 6 月

此版本的 Azure Database for MySQL 单一服务器包括以下更新。

  • 已启用从门户/CLI 为 MySQL 8.0 改变服务器参数 activate_all_roles_on_login 的功能

    用户现在可以使用 Azure 门户和 CLI 更改 activate_all_roles_on_login 参数的值。 此参数有助于配置是否在用户登录到服务器时启用所有已授予角色的自动激活。 有关详细信息,请参阅服务器系统变量

  • 解决了 MySQL Community Bug #29596969 和 #94668

    此版本解决了 MySQL 8.0 中当字段被标记为 PRIMARY KEY 时,CREATE TABLE 查询会忽略默认表达式的问题。 (MySQL Community Bug #29596969, Bug #94668). 有关详细信息,请参阅 MySQL Bug:#94668:在 CREATE TABLE 查询期间,如果字段标记为 PK,则表达式默认值为 NULL

  • 解决了“SHOW TABLE”查询中表名称重复的问题

    我们引入了一个新函数,用于在表操作期间对表缓存进行精细的控制。 由于新功能中存在代码缺陷,因此可能会错误配置或添加目录缓存中的条目,并导致出现意外行为(例如返回两个名称相同的表)。 目录缓存仅适用于“SHOW TABLE”相关查询;不会影响任何 DML 或 DDL 查询。 此版本中已完全修复了此问题。

  • 增加了服务器参数 max_heap_table_size 的默认值,以帮助减少临时表溢出到磁盘的情况

    在此版本中,对于常规用途 64 vCore 和内存优化 32 vCore,参数 max_heap_table_size 允许的最大值已更改为 8589934592。

  • 解决了在门户中设置参数 sql_require_primary_key 的值时遇到的问题

    用户现在可以直接从 Azure 门户修改参数 sql_require_primary_key 的值。

  • 计划内维护通知的正式发布

    此版本在 Azure Database for MySQL 单一服务器中提供计划内维护通知的正式发布版。 有关详细信息,请参阅计划内维护通知一文。

  • 默认启用了参数 redirect_enabled

    在此版本中,将默认启用参数 redirect_enabled。 重定向是为了减小客户端应用程序与 MySQL 服务器之间的网络延迟,因为它允许应用程序直接连接到后端服务器节点。 PHP 应用程序中的重定向支持是通过 Microsoft 开发的 mysqlnd_azure 扩展提供的。 有关详细信息,请参阅通过重定向连接到 Azure Database for MySQL 一文。

注意

  • 重定向不适用于专用链接设置。 如果使用的是 Azure Database for MySQL 的专用链接,则可能会遇到连接问题。 若要解决此问题,请确保将参数 redirect_enabled 设置为“关”,并重启客户端应用程序。
  • 如果具有使用 mysqlnd_azure 重定向驱动程序连接到 Azure Database for MySQL 的 PHP 应用程序,则可能遇到影响插入事务的数据编码问题。
    若要解决此问题,请执行以下操作之一:
    • 在 Azure 门户中,通过将 redirect_enabled 参数设置为“关”禁用重定向,并重启 PHP 应用程序以在更改后清除驱动程序缓存。
      • 根据建立连接后的设置(例如“设置名称 utf8mb4”),在会话级别显式设置字符集相关参数。

2021 年 2 月

此版本的 Azure Database for MySQL 单一服务器包括以下更新。

  • 添加了新的存储过程,以支持 5.7 和 8.0 版大型存储服务器的用于数据输入的全局事务标识符 (GTID)。
  • 已更新以支持 MySQL 版本 5.6.50 和 5.7.32。

2021 年 1 月

此版本的 Azure Database for MySQL 单一服务器包括以下更新。

  • 启用了“重置密码”以自动修复第一个管理员权限。
  • 公开了 auto_increment_increment/auto_increment_offset 服务器参数和 session_track_gtids
  • 添加了用于控制 innodb 缓冲池转储/还原的新存储过程。
  • 公开了大型存储服务器的 innodb 预热相关服务器参数。

联系人

如果有任何关于使用 Azure Database for MySQL 的问题或建议,请联系 Azure Database for MySQL 团队 (@Ask Azure DB for MySQL)。 此电子邮件地址并不是技术支持别名。

另外,请酌情考虑以下联系点:

后续步骤