“MySQL的错误记录”的版本间差异
跳到导航
跳到搜索
无编辑摘要 |
小 (Eijux移动页面MySQL在Windows上的错误记录至MySQL的错误记录,不留重定向) |
||
(未显示同一用户的1个中间版本) | |||
第4行: | 第4行: | ||
在 Windows 上,mysqld使用“'''--log-error'''”,“'''--pid-file'''”和“'''--console'''”选项来确定 '''mysqld''' 是否将错误日志写入控制台或文件,如果是文件,则写入文件名: | 在 Windows 上,mysqld使用“'''--log-error'''”,“'''--pid-file'''”和“'''--console'''”选项来确定 '''mysqld''' 是否将错误日志写入控制台或文件,如果是文件,则写入文件名: | ||
# 如果给出“--console”,则mysqld将错误日志写入控制台。(如果同时提供了--console,则优先于--log-error,关于--log-error的以下各项均不适用。在 MySQL 5.7 之前,这是相反的:--log-error优先于--console。) | # 如果给出“--console”,则mysqld将错误日志写入控制台。(如果同时提供了--console,则优先于--log-error,关于--log-error的以下各项均不适用。在 MySQL 5.7 之前,这是相反的:--log-error优先于--console。) | ||
# | # 如果:未指定“--log-error”、或使用“--log-error”而未指定文件名,则除非指定“--pid-file”选项,否则mysqld会将错误日志写入数据目录中名为“host_name.err”的文件。(在这种情况下,文件名是 PID 文件的基本名称,在数据目录中后缀为.err) | ||
#: 如下,名为“MSI.err”的文件: | |||
#: [[File:MySQL错误日志文件.png|600px]] | #: [[File:MySQL错误日志文件.png|600px]] | ||
# 如果使用“'''--log-error=file_name'''”,则mysqld会将错误日志写入数据目录下的该文件(如果名称没有后缀,则添加.err后缀),除非给出绝对路径名以指定其他位置。 | # 如果使用“'''--log-error=file_name'''”,则mysqld会将错误日志写入数据目录下的该文件(如果名称没有后缀,则添加.err后缀),除非给出绝对路径名以指定其他位置。 | ||
第10行: | 第11行: | ||
如果服务器将错误日志写入控制台,则会将“log_error”系统变量设置为“stderr”。否则,服务器将错误日志写入文件,并将“log_error”设置为文件名。 | 如果服务器将错误日志写入控制台,则会将“log_error”系统变量设置为“stderr”。否则,服务器将错误日志写入文件,并将“log_error”设置为文件名。 | ||
另外,服务器默认情况下会将事件和错误消息写入应用程序日志中的 Windows 事件日志: | 另外,服务器默认情况下会将事件和错误消息写入应用程序日志中的 Windows 事件日志: | ||
第15行: | 第17行: | ||
# 事件日志条目的来源为MySQL。 | # 事件日志条目的来源为MySQL。 | ||
# 写入事件日志的信息由“log_syslog”系统变量控制,该变量在 Windows 上默认为启用。 | # 写入事件日志的信息由“log_syslog”系统变量控制,该变量在 Windows 上默认为启用。 | ||
== MySQL在Unix和类Unix上的错误记录 == | |||
在 Unix 和类似 Unix 的系统上,mysqld使用“'''--log-error'''”选项来确定mysqld是将错误日志写入控制台还是文件,如果写入文件,则将文件名写入文件: | |||
# 如果未提供“--log-error”,则mysqld将错误日志写入控制台。 | |||
# 如果给出“--log-error”而未指定文件名,则mysqld将错误日志写入数据目录中名为host_name.err的文件中。 | |||
# 如果使用“'''--log-error=file_name'''”,则mysqld会将错误日志写入数据目录下的该文件(如果名称没有后缀,则添加.err后缀),除非给出绝对路径名以指定其他位置。 | |||
如果在“[mysqld]”,“[server]”或“[mysqld_safe]”节的选项文件中提供了“--log-error”,则mysqld_safe查找并使用该选项,并将其传递给mysqld。 | |||
* 通常,Yum 或 APT 软件包安装会在服务器配置文件中的“/var/log”下使用诸如“log-error=/var/log/mysqld.log”之类的选项来配置错误日志文件位置。从选项中删除文件名将导致使用数据目录中的host_name.err文件。 | |||
如果服务器将错误日志写入控制台,则会将“log_error”系统变量设置为“stderr”。否则,服务器将错误日志写入文件,并将“log_error”设置为文件名。 |
2021年3月23日 (二) 20:36的最新版本
MySQL在Windows上的错误记录
在 Windows 上,mysqld使用“--log-error”,“--pid-file”和“--console”选项来确定 mysqld 是否将错误日志写入控制台或文件,如果是文件,则写入文件名:
- 如果给出“--console”,则mysqld将错误日志写入控制台。(如果同时提供了--console,则优先于--log-error,关于--log-error的以下各项均不适用。在 MySQL 5.7 之前,这是相反的:--log-error优先于--console。)
- 如果:未指定“--log-error”、或使用“--log-error”而未指定文件名,则除非指定“--pid-file”选项,否则mysqld会将错误日志写入数据目录中名为“host_name.err”的文件。(在这种情况下,文件名是 PID 文件的基本名称,在数据目录中后缀为.err)
- 如果使用“--log-error=file_name”,则mysqld会将错误日志写入数据目录下的该文件(如果名称没有后缀,则添加.err后缀),除非给出绝对路径名以指定其他位置。
如果服务器将错误日志写入控制台,则会将“log_error”系统变量设置为“stderr”。否则,服务器将错误日志写入文件,并将“log_error”设置为文件名。
另外,服务器默认情况下会将事件和错误消息写入应用程序日志中的 Windows 事件日志:
- 标记为“Error”,“Warning”和“Note”的条目将写入事件日志,但不会写入消息(例如来自各个存储引擎的信息语句)。
- 事件日志条目的来源为MySQL。
- 写入事件日志的信息由“log_syslog”系统变量控制,该变量在 Windows 上默认为启用。
MySQL在Unix和类Unix上的错误记录
在 Unix 和类似 Unix 的系统上,mysqld使用“--log-error”选项来确定mysqld是将错误日志写入控制台还是文件,如果写入文件,则将文件名写入文件:
- 如果未提供“--log-error”,则mysqld将错误日志写入控制台。
- 如果给出“--log-error”而未指定文件名,则mysqld将错误日志写入数据目录中名为host_name.err的文件中。
- 如果使用“--log-error=file_name”,则mysqld会将错误日志写入数据目录下的该文件(如果名称没有后缀,则添加.err后缀),除非给出绝对路径名以指定其他位置。
如果在“[mysqld]”,“[server]”或“[mysqld_safe]”节的选项文件中提供了“--log-error”,则mysqld_safe查找并使用该选项,并将其传递给mysqld。
- 通常,Yum 或 APT 软件包安装会在服务器配置文件中的“/var/log”下使用诸如“log-error=/var/log/mysqld.log”之类的选项来配置错误日志文件位置。从选项中删除文件名将导致使用数据目录中的host_name.err文件。
如果服务器将错误日志写入控制台,则会将“log_error”系统变量设置为“stderr”。否则,服务器将错误日志写入文件,并将“log_error”设置为文件名。