MySQL日志探究

字数 616阅读 146
mysql_hosting.png

所以今天来研究一下mysql的日志。

一. MySQL日志分类

  1. 错误日志 (The Error Log)
    Problems encountered starting, running, or stopping mysqld
    记录启动、运行或停止mysqlld时出现的问题
  2. 常规查询日志 (The General Query Log)
    Established client connections and statements received from clients
    记录建立的客户端连接和执行的语句。
  3. 慢速查询日志 (The slow query log)
    All queries that took more than long_query_time seconds to execute or didn't use indexes
    记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询。
  4. 二进制日志 (The binary log)
    All statements that change data (also used for replication)
    记录所有更改数据的语句。

打开my.ini可以看到文件中已经写好了一部分日志配置。下面是我加了注释的,方便理解各项的含义。没有配置log-bin日志,如果需要,可以类似地进行配置。

# General and Slow logging.
log-output=FILE

#为1开启general日志,为0关闭
general-log=1
#general日志存放位置,日志开启时有效。默认位置为Data目录(见其他),也可以指定一个绝对位置
general_log_file="X6X8-20170117BN.log"

#slow日志开闭
slow-query-log=1
#slow日志存放文件
slow_query_log_file="X6X8-20170117BN-slow.log"
#超过多长时间算slow,单位是秒
long_query_time=10

# Binary Logging.
# log-bin

# Error Logging.
log-error="X6X8-20170117BN.err"

二. MySQL日志开启与关闭

开启与关闭日志只需配置上述my.ini文件

  1. 将相应日志的开关设置为1。如slow-query-log=1开启slow日志
  2. 配置日志文件存放文职。如slow_query_log_file="c:\log\mysql_slow_log.log" 或者写相对路径slow_query_log_file="slow_log.log"会存储到data(见3.2)目录下。
  3. 重启mysql(见3.1)

三. 其他

3.1 Windows系统下MySQL的关闭与启动

在windows系统下MySQL一般会被安装为系统服务。所以我们可以以启动、关闭一般服务的通用方式来操作MySQL。
在命令提示符下通过以下命令开、闭系统服务
启动:net start 服务名
关闭:net stop 服务名
如果不知道本机上MySQL服务的服务名,可以通过win+R打开运行窗口,输入service.msc,打开系统服务,查看mysql的服务名。当然也可以在这个窗口进行mysql的启动与关闭。

image.png
image.png

3.2 mysql配置文件my.ini、日志和数据文件的位置

我遇到了两种情况:

  1. mysql安装在c盘program file文件夹下,my.ini位于c:\ProgramData\MySQL\MySQL Server 5.7下。该目录下有个Data目录是日志的默认存放位置,并且数据库文件也存在这个Data目录下。
  2. 安装在了D盘,以上文件位于mysql安装目录下。

推荐阅读更多精彩内容