如果问的地方不对,抱歉。
我使用 Ubuntu 16.04,对 Linux 系统了解甚少,我依靠 webmin 来托管我的网站。最近出现了 mysql 无法启动的问题,所以我试图查看错误日志以了解问题所在。
我的第一个问题是:找到错误日志的一般方法是什么?我进行了大量搜索,但在我看来,在不同的系统中,使用不同的设置,这些错误日志可能位于不同的地方,文件名也不同。虽然我设法在下面找到它们/var/log/mysql/
(与我能找到的每个来源都不同),但我想知道如何找到这些日志的一般位置。我认为应该有一些配置文件来控制这一点,对吗?此外,在某些网页上mysql.log
提到了一个文件,但我找不到它在哪里。
其次,在 下/var/log/mysql
有error.log
和等文件error.log.1.gz
。error.log.2.gz
除了error.log
文件,为了读取其他文件,我必须先提取它们。有没有什么方法,比如一些 mysql 命令,可以直接读取它们?
答案1
虽然我设法在 /var/log/mysql/ 下找到了它们(与我能找到的每个来源都不同),
日志文件已经存储在 下/var/log/
很长时间了。它被更改为该位置,因此默认情况下它们被添加到“logrotate”。您可以在 Ubuntu 中看到任何日志文件/var/log/
。
其次,在/var/log/mysql下,有error.log和error.log.1.gz error.log.2.gz等文件。
带数字的日志是较旧的日志。日志文件会在某个时间点通过“logrotate”进行压缩。压缩时间的设置存储在文件中/etc/logrotate.conf
,默认情况下文件会“每周”压缩一次。
除了 error.log 文件之外,为了读取其他文件,我必须先提取它们。有没有办法像某些 mysql 命令一样直接读取它们?
不可以。第一部分也不正确。原因有二:
- 以 结尾的文件
gz
至少有一周的历史了,为什么你需要查看它们?一周前的错误太旧了,没有任何用处。 您可以查看已压缩的日志文件。
zcat /var/log/mysql/error.1.gz | more
将显示文件的行而不解压缩它们。
补充一点:日志查看器还显示压缩日志文件。您需要做的就是将日志文件添加到查看器(参见设置中的“打开”):