使用 Azure CLI 在 Azure Database for MariaDB 中配置服务器参数

重要

Azure Database for MariaDB 已列入停用计划。 强烈建议迁移到 Azure Database for MySQL。 若要详细了解如何迁移到 Azure Database for MySQL,请参阅 Azure Database for MariaDB 发生了什么?

可以使用 Azure CLI、Azure 命令行实用工具来列出、显示和更新 Azure Database for MariaDB 服务器的配置参数。 在服务器级别会公开引擎配置的一个子集,并可以进行修改。

注意

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

先决条件

若要逐步执行本操作方法指南,需要:

列出 Azure Database for MariaDB 服务器的服务器配置参数

若要列出服务器中的所有可修改参数及其值,请运行 az mariadb server configuration list 命令。

可以列出资源组“myresourcegroup”下服务器 mydemoserver.mariadb.database.chinacloudapi.cn 的服务器配置参数。

az mariadb server configuration list --resource-group myresourcegroup --server mydemoserver

有关每个列出参数的定义,请参阅服务器系统变量上的 MariaDB 参考部分。

显示服务器配置参数详细信息

若要显示服务器的某个特定配置参数的详细信息,请运行 az mariadb server configuration show 命令。

本示例显示了资源组“myresourcegroup” 下服务器 “mydemoserver.mysql.database.chinacloudapi.cn” 的服务器配置参数 “slow_query_log” 的详细信息。

az mariadb server configuration show --name slow_query_log --resource-group myresourcegroup --server mydemoserver

修改服务器配置参数值

此外,你还可以修改某个服务器配置参数的值,这会更新 MariaDB 服务器引擎的基础配置值。 若要更新配置,请使用 az mariadb server configuration set 命令。

更新资源组“myresourcegroup” 下服务器 “mydemoserver.mysql.database.chinacloudapi.cn” 的服务器配置参数 “slow_query_log”。

az mariadb server configuration set --name slow_query_log --resource-group myresourcegroup --server mydemoserver --value ON

若要重置配置参数的值,省去可选的 --value 参数,服务将应用默认值。 对于上述示例,它将如下所示:

az mariadb server configuration set --name slow_query_log --resource-group myresourcegroup --server mydemoserver

此代码会将 slow_query_log 配置重置为默认值 OFF。

设置参数未列出

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

更新资源组 “myresourcegroup” 下服务器 “mydemoserver.mariadb.database.chinacloudapi.cn” 的服务器配置参数“init_connect”,以设置字符集之类的值。

az mariadb server configuration set --name init_connect --resource-group myresourcegroup --server mydemoserver --value "SET character_set_client=utf8;SET character_set_database=utf8mb4;SET character_set_connection=latin1;SET character_set_results=latin1;"

使用时区参数

填充时区表

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

注意

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

CALL mysql.az_load_timezone();

重要

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

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

SELECT name FROM mysql.time_zone_name;

设置全局级时区

可以使用 az mariadb server configuration set 命令来设置全局级时区。

下面的命令用于将资源组 myresourcegroup 下服务器 mydemoserver.mariadb.database.chinacloudapi.cn 的服务器配置参数 time_zone 更新为 +08:00。

az mariadb server configuration set --name time_zone --resource-group myresourcegroup --server mydemoserver --value " +08:00"

设置会话级时区

可以通过从 MariaDB 命令行或 MariaDB Workbench 等工具运行 SET time_zone 命令来设置会话级时区。 以下示例将时区设置为 +08:00 时区。

SET time_zone = ' +08:00';

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

后续步骤