你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure Database for MySQL 灵活服务器限制

本文介绍了 Azure Database for MySQL - 灵活服务器中的限制。 MySQL 数据库引擎中的一般限制也适用。 如果想要了解资源限制(计算、内存、存储),请参阅有关计算和存储的文章

服务器参数

Azure Database for MySQL - 灵活服务器支持优化服务器参数的值。 某些参数的最小值和最大值(例如,max_connectionsjoin_buffer_sizequery_cache_size)由计算层在计算服务器大小之前确定。 有关这些限制的详细信息,以及服务器参数(如 max_connectionsinnodb_buffer_pool_size)的最小值和最大值,请参阅有关服务器参数的文章

生成的不可见主键

对于 MySQL 8.0 及更高版本,默认为所有 Azure Database for MySQL - 灵活服务器实例启用生成的不可见主键 (GIPK)

MySQL 8.0 及更高版本的服务器将不可见列 my_row_id 添加到该列上的表和主键,其中创建 InnoDB 表时没有显式主键。 因此,除非表创建语句还指定了显式主键,否则无法创建具有名为 my_row_id 的列的表。 了解详细信息

默认情况下,GIPK 显示在 SHOW CREATE TABLESHOW COLUMNSSHOW INDEX 的输出中。 GIPK 在 INFORMATION_SCHEMA COLUMNS 表和 STATISTICS 表中也可见。

有关 GIPK 及其使用数据传入复制用例的更多详细信息,请参阅将数据复制到 Azure Database for MySQL - 灵活服务器

禁用 GIPK 的步骤

如果要禁用 GIPK,有两个选项:

lower_case_table_names

在 Azure Database for MySQL - 灵活服务器中,如果是 MySQL 5.7 版本,则 lower_case_table_names 的默认值为 1。 如果需要调整此设置,建议创建支持票证。 请务必了解,将参数值更改为 2 后,不允许将其还原为 1

对于 MySQL 版本 8.0,禁止在初始化服务器后更改 lower_case_table_names 设置。 了解详细信息。 在 Azure Database for MySQL - 灵活服务器中,如果是 MySQL 8.0 版本,则 lower_case_table_names 的默认值为 1。 如果要将此参数更改为 2,建议创建 MySQL 5.7 服务器,并创建支持票证,以获取有关更改的帮助。 稍后,如有必要,可以将服务器升级到版本 8.0。

存储引擎

MySQL 支持许多存储引擎。 以下列表显示了 Azure Database for MySQL - 灵活服务器中支持和不支持的存储引擎。

支持的引擎

不支持的引擎

权限和数据操作支持

许多服务器参数和设置可能会无意中降低服务器性能或否定 MySQL 服务器的 ACID(原子级的、一致的、孤立的和持久的)属性。 为了在产品级别维护服务完整性和服务级别协议,Azure Database for MySQL - 灵活服务器不会公开多个角色。

Azure Database for MySQL - 灵活服务器不允许直接访问基础文件系统。 某些数据操作命令不受支持。

支持的权限

不受支持的权限

  • 数据库管理员 (DBA) 角色受到限制。 或者,可以使用创建新服务器期间分配的管理员用户的角色。 此角色允许执行大部分数据定义语言 (DDL) 和数据操作语言 (DML) 语句。

  • 以下静态权限受到限制:

  • 使用迁移工具创建备份时,不支持授予 BACKUP_ADMIN 权限。

  • DEFINER 需要 SUPER 权限才能创建并且受到限制。 如果要使用备份导入数据,请手动移除 CREATE DEFINER 命令或在执行 mysqlpump 备份时使用 --skip-definer 命令。

  • mysql 系统数据库为只读状态,支持各种平台即服务 (PaaS) 功能。 不能对 mysql 系统数据库进行更改。

  • SELECT ... INTO OUTFILE 在服务中不受支持。

功能限制

区域冗余高可用性

只能在服务器创建期间设置区域冗余高可用性配置。 可突发计算层不支持此配置。

网络

创建服务器后,不能更改连接方法。 如果使用专用访问(虚拟网络集成)创建服务器,则创建后无法将其更改为公共访问(允许的 IP 地址),反之亦然。

停止/启动操作

只读副本配置(源和副本)不支持停止/启动服务器的操作。

缩放操作

不支持减少预配的服务器存储。

服务器版本升级

不支持在主要数据库引擎版本之间进行自动迁移。 如果要升级到主版本,请在使用新引擎版本创建的服务器上使用转储和还原

还原服务器

使用时间点还原时,新服务器具有与其所基于的源服务器相同的计算和存储配置。 可以在创建服务器后缩减新还原的服务器的计算。

功能比较

并非 Azure Database for MySQL - 单一服务器中的所有功能都在 Azure Database for MySQL - 灵活服务器中可用。

有关 Azure Database for MySQL - 单一服务器和 Azure Database for MySQL - 灵活服务器之间的功能比较的完整列表,请参阅有关在 Azure 中选择正确的 MySQL 服务器选项的文章