mysql 日志的启动与查看:有利于开发者研究网站一个页面执行时的sql语句变化…

mysql 日志的启动与查看:有利于开发者研究网站一个页面执行时的sql语句变化…

当我们研究一个网站的时候,比如phpwind系统,我需要知道当发表帖子的时候mysql执行了哪些查询和更新和插入呢?

有个方法可以给我我们,那就是开启mysql的日志 查询日志: -log 即可解决。

如何做了?以WampServer Version 2.2为例子

打开安装目录下的:\wamp\bin\mysql\mysql5.5.24\my.ini

找到如下

log-error=E:/wamp/logs/mysql.log

在它下面增加

log=E:/wamp/logs/mysql-log.log

好了,重启mysql。

接着执行访问一次准备好的phpwind页面,然后查看下E:/wamp/logs/mysql-log.log(直接用编辑工具打开,例如记事本),即可查看到本次访问,mysql执行了哪些sql语句(查询+更新+插入)

好了,以下内容转自强大的互联网

本人网站:http://www.xinhuiyi.com/ 新回忆社区 如果您也是使用phpwind程序,且有一定的经验和研究,欢迎一起探讨

mysql有以下几种日志:

错误日志: -log-err

查询日志: -log

慢查询日志:  -log-slow-queries

更新日志:  -log-update

二进制日志: -log-bin

默 认情况下,所有日志创建于mysqld数据目录中。通过刷新日志,你可以强制 mysqld来关闭和重新打开日志文件(或者在某些情况下切换到一个新的日志)。当你执行一个FLUSH LOGS语句或执行mysqladmin flush-logs或mysqladmin refresh时,出现日志刷新

1. 错误日志

用–log- error[=file_name]选项来指定mysqld保存错误日志文件的位置。如果没有给定file_name值,mysqld使用错误日志名 host_name.err 并在数据目录中写入日志文件。如果你执行FLUSH LOGS,错误日志用-old重新命名后缀并且mysqld创建一个新的空日志文件。(如果未给出–log-error选项,则不会重新命名)。

如果不指定–log-error,或者(在Windows中)如果你使用–console选项,错误被写入标准错误输出stderr。通常标准输出为你的终端。

2. 通用查询日志                                                            

用–log[=file_name]或-l [file_name]选项启动它。如果没有给定file_name的值,默认名是host_name.log。

3. 慢速查询日志                                                            

用–log-slow-queries[=file_name]选项启动时,mysqld 写一个包含所有执行时间超过long_query_time秒的SQL语句的日志文件.如果没有给出file_name值,默认未主机名,后缀为 -slow.log。如果给出了文件名,但不是绝对路径名,文件则写入数据目录。

3. 更新日志                                                              

用–log-update[=file_name]选项启动,不推荐使用.

是否启用了日志

show variables like 'log_%';

怎样知道当前的日志

show master status;

顯示二進制日志數目

show master logs;

看二进制日志文件用mysqlbinlog

mysqlbinlog mail-bin.000001

或者

mysqlbinlog mail-bin.000001 | tail

在配置文件中指定log的輸出位置.

Windows:Windows 的配置文件为
my.ini,一般在 MySQL 的安装目录下或者
c:\Windows 下。

Linux:Linux 的配置文件为
my.cnf ,一般在
/etc 下。

在linux下:

Sql代码

# 在[mysqld] 中輸入

#log log-error=/usr/local/mysql/log/error.log log=/usr/local/mysql/log/mysql.log long_query_time=2 log-slow-queries= /usr/local/mysql/log/slowquery.log

# 在[mysqld] 中輸入 #log

log-error=/usr/local/mysql/log/error.log log=/usr/local/mysql/log/mysql.log long_query_time=2 log-slow-queries= /usr/local/mysql/log/slowquery.log

windows下:

Sql代码

# 在[mysqld] 中輸入

#log log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log" log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log" long_query_time=2 log-slow-queries= "E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"

# 在[mysqld] 中輸入 #log

log-error="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/error.log" log="E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/mysql.log" long_query_time=2 log-slow-queries= "E:/PROGRA~1/EASYPH~1.0B1/mysql/logs/slowquery.log"

开启慢查询

long_query_time =2 –是指执行超过多久的sql会被log下来,这里是2秒


log-slow-queries= /usr/local/mysql/log/slowquery.log –将查询返回较慢的语句进行记录


log-queries-not-using-indexes = nouseindex.log –就是字面意思,log下来没有使用索引的query

log=mylog.log –对所有执行语句进行记录

windows下开启mysql日志:

在[mysql]下加入这些(基本上等于加在最后面):

log-error= name for the query log file. Otherwise a default name will be used. #注:(写成txt文件editplus可以及时重载,不过有时要放在C盘下editplus才可以及时重载) log= c:/mysql_query.log.txt #Enter a name for the slow query log file. Otherwise a default name will be used. log-slow-queries= #Enter a name for the update log file. Otherwise a default name will be used. log-update= #Enter a name for the binary log. Otherwise a default name will be used. log-bin=

转载于:https://my.oschina.net/u/205403/blog/85155

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/110296.html原文链接:https://javaforall.net

(0)
上一篇 2021年8月20日 上午11:00
下一篇 2021年8月20日 下午12:00


相关推荐

  • 【原创】ERROR 1142 (42000): command denied to user 引发的权限不足问题[亲测有效][通俗易懂]

    【原创】ERROR 1142 (42000): command denied to user 引发的权限不足问题[亲测有效][通俗易懂]mysqlgrants引发的权限不足问题[42000]基于mysql5.7.x1、先退出mysql,找到mysql的配置文件我的文件在这里./etc.my.cnf2、然后重新启动mysql,3、进入mysql,切换到mysql数据库,找到user表,查看user表的权限:4、修改权限,基于mysql5.7.x正常创建数据库查看权限>>>showgrants;…

    2026年4月16日
    7
  • Nbtscan介绍及使用

    Nbtscan介绍及使用Nbtscan 从 Windows 网络上收集 NetBIOS 信息本文为整理出来的文章 仅供学习 工具名称 nbtscan 1 5 1a 应用环境 Linux 工具介绍 这是一款用于扫描 Windows 网络上 NetBIOS 名字信息的程序 该程序对给出范围内的每一个地址发送 NetBIOS 状态查询 并且以易读的表格列出接收到的信息 对于每个响应的主

    2026年3月26日
    2
  • idea如何查找替换_wps表格怎么查找替换文字

    idea如何查找替换_wps表格怎么查找替换文字在平时敲代码的时候经常碰到,咦,这个变量名好像不太合适,但又写了好多这时候可以怎么办呢?Pycharm里面给我们准备了替换功能————–windows电脑—————1.Ctrl+r替换2.Ctrl+Shift+F全局查3.Ctrl+Shift+R全局替换————–MAC电脑—————1.command+F全局查找2.command+R全局替换…

    2022年8月25日
    16
  • php上位机,OV7670摄像头上位机软件源码

    php上位机,OV7670摄像头上位机软件源码【实例简介】OV7670摄像头上位机软件,使用QT编写,通过CY7C68013传输数据,上位机发送数据,然后下位机上传一帧图像。整套系统需要上位机软件,CY7C68013程序,FPGA程序。这个是上位机软件的源代码,原来上次的exe文件很多人说不会用,所以重新上传源代码,再不会用,我也没法子了。【实例截图】【核心代码】CMOS└──CMOS├──CMOS.pro├──CMOS.pro.use…

    2022年5月30日
    41
  • 基于51单片机的红绿灯设计

    基于51单片机的红绿灯设计寒假项目最后一个,基于STC/AT89C51的红路灯设计实现十效果具体为:南北通行42秒,南北闪烁3秒,南北黄灯4秒,禁止通行1秒,东西黄灯4秒,东西通行27秒,东西闪烁3秒,东西黄灯4秒。同时具备特殊放行模式:南北自由通行;东西自由通行;全部禁行。所有时间可以修改。貌似和平时的红路灯不一样,但是由于想凑齐八个状态,就整了这神奇的控制步骤。黄灯多,安全第一!!原理图:本来是想设计一个蓝牙或者……

    2025年5月24日
    8
  • 静态测试方法

    静态测试方法本文讨论人工静态测试方法和自动静态测试方法 来帮你理解研发流程上是如何保证代码质量的 以及如何搭建自己的自动静态代码扫描方案 并且应用到项目的日常开发工作中去 人工静态方法人工静态方法检查代码错误 主要有代码走查 结对编程 以及同行评审这三种手段 代码走查代码走查 CodeReview 是由开发人员检查自己的代码 尽可能多地发现各类潜在错误 但是 由于个人能力的差异 以及开发人员的 思维惯性 很多错误并不能在这个阶段被及时发现 结对编程结对编程 PairProgramm

    2026年3月20日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号