所以今天来研究一下mysql的日志。
一. MySQL日志分类
- 错误日志 (The Error Log)
Problems encountered starting, running, or stopping mysqld
记录启动、运行或停止mysqlld时出现的问题 - 常规查询日志 (The General Query Log)
Established client connections and statements received from clients
记录建立的客户端连接和执行的语句。 - 慢速查询日志 (The slow query log)
All queries that took more than long_query_time seconds to execute or didn't use indexes
记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询。 - 二进制日志 (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。如slow-query-log=1开启slow日志
- 配置日志文件存放文职。如slow_query_log_file="c:\log\mysql_slow_log.log" 或者写相对路径slow_query_log_file="slow_log.log"会存储到data(见3.2)目录下。
- 重启mysql(见3.1)
三. 其他
3.1 Windows系统下MySQL的关闭与启动
在windows系统下MySQL一般会被安装为系统服务。所以我们可以以启动、关闭一般服务的通用方式来操作MySQL。
在命令提示符下通过以下命令开、闭系统服务
启动:net start 服务名
关闭:net stop 服务名
如果不知道本机上MySQL服务的服务名,可以通过win+R打开运行窗口,输入service.msc,打开系统服务,查看mysql的服务名。当然也可以在这个窗口进行mysql的启动与关闭。
3.2 mysql配置文件my.ini、日志和数据文件的位置
我遇到了两种情况:
- mysql安装在c盘program file文件夹下,my.ini位于c:\ProgramData\MySQL\MySQL Server 5.7下。该目录下有个Data目录是日志的默认存放位置,并且数据库文件也存在这个Data目录下。
- 安装在了D盘,以上文件位于mysql安装目录下。