有时候,我们通过EF或者其他的ORM和数据库进行数据交换,这样我们不方便看到执行的sql语句,我们可以借助一些工具代理来查看,像SQL Server安装的时候就自带Profiler,可以很方便的看到执行的SQL语句,对MySql需要自己来下载安装工具,由于对这方面的工具缺乏信息,我就想到了最原始的方法——查看日志。

mysql日志的种类,一般来说,日志有五种,分别为:
  1. 错误日志:-log-err (记录启动,运行,停止mysql时出现的信息)
  2. 二进制日志:-log-bin (记录所有更改数据的语句,还用于复制,恢复数据库用)
  3. 查询日志:-log (记录建立的客户端连接和执行的语句)
  4. 慢查询日志: -log-slow-queries (记录所有执行超过long_query_time秒的所有查询)
  5. 更新日志: -log-update (二进制日志已经代替了老的更新日志,更新日志在MySQL 5.1中不再使用)

官方文档:https://dev.mysql.com/doc/

1、打开cmd

输入 mysql -u root -p,然后输入密码
在这里插入图片描述

2、查询当前日志记录的状况
mysql>show variables like 'log%';(是否启用了日志)

mysql> show master status;(怎样知道当前的日志)

mysql> show master logs;(显示二进制日志的数目)

在这里插入图片描述

3、查看日志功能状态

  看到value值为off状态,没有开启日志功能。win+r 输入 services.msc打开服务。找到mysql的配置文件位置。
在这里插入图片描述

4、配置my.ini文件

关闭mysql服务

mysql>net stop mysql

打开my.ini配置文件,添加变量,保存。

log=E:/mysql_log.txt

在这里插入图片描述

然后启动mysql服务

mysql>net start mysql
5、查看日志

在这里插入图片描述

  MySQL的查询日志记录了所有MySQL数据库请求的信息。无论这些请求是否得到了正确的执行。默认情况下MySQL查询日志是关闭的。生产环境,如果开启MySQL查询日志,对性能还是有蛮大的影响的。另外很多时候,MySQL慢查询日志基本可以定位那些出现性能问题的SQL,它跟SQL Server中的profiler有点类似,但是这个不能跟踪某个会话、用户、客户端。它只能对整个数据库进行跟踪。

Logo

快速构建 Web 应用程序

更多推荐