使用 Azure 门户在 Azure Database for MySQL 中配置服务器参数

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

重要

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

用于 MySQL 的 Azure 数据库支持配置某些服务器参数。 本文介绍如何使用 Azure 门户配置这些参数。 并非所有服务器参数都可调整。

注意

可在服务器级别全局更新服务器参数,方式是使用 Azure CLIPowerShellAzure 门户

配置服务器参数

  1. 登录到 Azure 门户,然后找到 Azure Database for MySQL 服务器。
  2. 在“设置”部分下,单击“服务器参数”,打开 Azure Database for MySQL 服务器的“服务器参数”页。
  3. 定位需要调整的任何设置。 查看“说明”列,了解用途和允许的值。
  4. 单击“保存”以保存更改。
  5. 保存参数的新值后,随时可以通过选择“全部重置为默认设置”,将所有设置还原为默认值。

设置参数未列出

如果 Azure 门户中未列出你要更新的服务器参数,则可以选择性地使用 init_connect 在连接级别设置参数。 此项可为每个连接到服务器的客户端设置服务器参数。

  1. 在“设置”部分下,单击“服务器参数”,打开 Azure Database for MySQL 服务器的“服务器参数”页。

  2. 搜索 init_connect

  3. 在 value 列的 value 中添加服务器参数,格式为 SET parameter_name=YOUR_DESIRED_VALUE

    例如,可以通过将 init_connect 设置为 SET character_set_client=utf8;SET character_set_database=utf8mb4;SET character_set_connection=latin1;SET character_set_results=latin1; 来更改服务器的字符集

  4. 以保存更改。

注意

init_connect 可用于在会话级别更改无需 SUPER 权限的参数。 若要验证是否可以使用 init_connect 设置参数,请执行 set session parameter_name=YOUR_DESIRED_VALUE; 命令,如果出现“拒绝访问;需要 SUPER 权限”错误,则无法使用“init_connect”设置参数。

使用时区参数

填充时区表

可以通过从 MySQL 命令行或 MySQL Workbench 等工具调用 mysql.az_load_timezone 存储过程,填充服务器上的时区表。

注意

如果正在运行 MySQL Workbench 中的 mysql.az_load_timezone 命令,可能需要先使用 SET SQL_SAFE_UPDATES=0; 关闭安全更新模式。

CALL mysql.az_load_timezone();

重要

应重启服务器,确保正确填充时区表。 要重启服务器,请使用 Azure 门户CLI

要查看可用的时区值,请运行以下命令:

SELECT name FROM mysql.time_zone_name;

设置全局级时区

可以从 Azure 门户中的“服务器参数”页设置全局级时区。

设置会话级时区

可以通过从 MySQL 命令行或 MySQL Workbench 等工具运行 SET time_zone 命令来设置会话级时区。 以下示例将时区设置为“美国/太平洋”时区。

SET time_zone = 'US/Pacific';

若要了解日期和时间函数,请参阅 MySQL 文档。

后续步骤