使用 Azure CLI 配置和访问慢查询日志
适用于: Azure Database for MySQL - 单一服务器
重要
Azure Database for MySQL 单一服务器即将停用。 强烈建议升级到 Azure Database for MySQL 灵活服务器。 有关如何迁移到 Azure Database for MySQL 灵活服务器的详细信息,请参阅 Azure Database for MySQL 单一服务器发生了什么情况?
可以使用 Azure CLI(Azure 命令行实用工具)下载 Azure Database for MySQL 慢查询日志。
先决条件
若要逐步执行本操作方法指南,需要:
- Azure Database for MySQL 服务器
- Azure CLI 或浏览器中的 Azure Cloud Shell
配置日志记录
通过执行下列步骤,可以对服务器进行配置以访问 MySQL 慢查询日志:
- 通过将 slow_query_log 参数设置为 ON 启用慢查询日志记录。
- 使用 log_output 选择要将日志输出到的位置。 若要将日志同时发送到本地存储和 Azure Monitor 诊断日志,请选择“File” 。 若要仅将日志发送到 Azure Monitor 日志,请选择“None”
- 调整其他参数,例如 long_query_time 和 log_slow_admin_statements。
若要了解如何通过 Azure CLI 设置这些参数的值,请参阅如何配置服务器参数。
例如,以下 CLI 命令将启用慢查询日志、将长查询时间设置为 10 秒并禁用慢管理语句的日志记录。 最后,它将列出配置选项供复查。
az mysql server configuration set --name slow_query_log --resource-group myresourcegroup --server mydemoserver --value ON
az mysql server configuration set --name log_output --resource-group myresourcegroup --server mydemoserver --value FILE
az mysql server configuration set --name long_query_time --resource-group myresourcegroup --server mydemoserver --value 10
az mysql server configuration set --name log_slow_admin_statements --resource-group myresourcegroup --server mydemoserver --value OFF
az mysql server configuration list --resource-group myresourcegroup --server mydemoserver
列出 Azure Database for MySQL 服务器的日志
如果“log_output” 配置为“File”,则可以直接从服务器的本地存储访问日志。 若要列出服务器的可用慢查询日志文件,请运行 az mysql server-logs list 命令。
可以列出资源组“myresourcegroup”下的服务器“mydemoserver.mysql.database.azure.com”的日志文件。 然后在日志文件列表中找到名为“log_files_list.txt”的文本文件。
az mysql server-logs list --resource-group myresourcegroup --server mydemoserver > log_files_list.txt
从服务器下载日志
如果“log_output” 配置为“File”,则可以使用 az mysql server-logs download 命令从服务器下载单个日志文件。
使用下列示例,可以将资源组“myresourcegroup”下服务器 mydemoserver.mysql.database.azure.com 的特定日志文件下载到本地环境。
az mysql server-logs download --name 20170414-mydemoserver-mysql.log --resource-group myresourcegroup --server mydemoserver