文档主页
MySQL 9.0 参考手册
相关文档 下载本手册
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
手册页 (TGZ) - 258.2Kb
手册页 (Zip) - 365.3Kb
信息 (Gzip) - 4.0Mb
信息 (Zip) - 4.0Mb


MySQL 9.0 参考手册  /  ...  /  将错误记录到系统日志

7.4.2.8 将错误记录到系统日志

可以让 mysqld 将错误日志写入系统日志(Windows 上的事件日志,以及 Unix 和类 Unix 系统上的 syslog)。

本节介绍如何使用内置过滤器 log_filter_internal 和系统日志接收器 log_sink_syseventlog 配置错误日志记录,使其立即生效并用于后续的服务器启动。有关配置错误日志记录的一般信息,请参阅 第 7.4.2.1 节“错误日志配置”

要启用系统日志接收器,请先加载接收器组件,然后修改 log_error_services

INSTALL COMPONENT 'file://component_log_sink_syseventlog';
SET PERSIST log_error_services = 'log_filter_internal; log_sink_syseventlog';

要设置 log_error_services 以在服务器启动时生效,请使用 第 7.4.2.1 节“错误日志配置” 中的说明。这些说明也适用于其他错误日志记录系统变量。

注意

将错误记录到系统日志可能需要额外的系统配置。请查阅您平台上的系统日志文档。

在 Windows 上,写入应用程序日志中的事件日志的错误消息具有以下特征

  • 标记为 ErrorWarningNote 的条目将写入事件日志,但不会写入来自各个存储引擎的信息性语句等消息。

  • 事件日志条目的来源为 MySQL(如果 syseventlog.tag 定义为 tag,则为 MySQL-tag)。

在 Unix 和类 Unix 系统上,记录到系统日志使用 syslog。以下系统变量会影响 syslog 消息

  • syseventlog.facilitysyslog 消息的默认设备是 daemon。设置此变量以指定其他设备。

  • syseventlog.include_pid:是否在 syslog 输出的每一行中包含服务器进程 ID。

  • syseventlog.tag:此变量定义了一个标签,用于添加到 syslog 消息中的服务器标识符(mysqld)中。如果定义了,则该标签将附加到标识符后面,并带有一个前导连字符。

MySQL 对有关非错误情况的重要系统消息(例如启动、关闭和设置的一些重大更改)使用自定义标签 系统。在不支持自定义标签的日志中(包括 Windows 上的事件日志,以及 Unix 和类 Unix 系统上的 syslog),系统消息将被分配给用于信息优先级级别的标签。但是,即使 MySQL log_error_verbosity 设置通常会排除信息级别的消息,这些消息也会被打印到日志中。

当日志接收器必须以这种方式回退到标签 信息 而不是 系统 时,并且日志事件在 MySQL 服务器外部被进一步处理(例如,由 syslog 配置过滤或转发),默认情况下,这些事件可能会被辅助应用程序处理为 信息 优先级,而不是 系统 优先级。