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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • piggycase_java状态机设计

    piggycase_java状态机设计一、实验目的练习使用动态规划算法解决实际问题(使用Java语言实现)二、实验内容【问题描述】给定一个空存钱罐的重量和这个存钱罐最多能装进去的重量,现在需要在不打破这个存钱罐的情况下猜测里面最少的钱。每种钱的数量不做限制,条件是必须装满,同时给出每种钱币的价值和重量。【输入】输入的第一行数据包含整数T,表示测试用例的数量。每个测试用例的第一行都包含两个整数e和f(1<=e<=f<=10000),分别表示空存钱罐和装满硬币的存钱罐的重量(以克记)。第二行包含一个整数n(1&

    2022年11月3日
  • 关于balun的一些仿真和思考[通俗易懂]

    关于balun的一些仿真和思考[通俗易懂]关于balun的一些仿真和思考1、错误的初始设计,电路图如下:2、来看看ADS里,理想balun的仿真结果3、将原电路的50ohm并接在balun的差分端,而非单端,再看看仿真结果。4、那么为什么出现上述情况呢?5、我们应该如何去做呢?6、总结:如有错误,还请留言区指出~为了提高共模抑制能力,很多芯片的输入输出口会设计成差分口,在射频电路中也是如此。最近在项目测试中,一个关于balun的问题困扰了我很久,迟迟没有想明白。我爸说:“当一个问题你久久思考却毫无头绪时,你就暂时放一放。也许有天突然开窍,你就想

    2022年10月24日
  • 中国国家航天局:探月工程四期还有三次任务「建议收藏」

    中国国家航天局:探月工程四期还有三次任务「建议收藏」中国国家航天局:探月工程四期还有三次任务

    2022年4月21日
  • python resize函数怎么用_python cv2.resize函数high和width注意事项说明「建议收藏」

    在opencv中获取图片的尺寸的方法是:importcv2img=cv2.imread(path)img.shape返回的是三维数组(high,width,3),当我们需要对图像进行缩放时需要用到cv2.resize()函数:#缩放到原来的二分之一img=cv.resize(img,(int(width/2),int(high/2)))此时需要传入的形状又是(width,…

    2022年4月14日
  • SprinBoot——SpringBoot项目WebSocket推送

    SprinBoot——SpringBoot项目WebSocket推送SprinBoot——SpringBoot项目WebSocket推送

    2022年4月23日
  • 陶瓷电容分类_陶瓷电容电压级别分类

    陶瓷电容分类_陶瓷电容电压级别分类陶瓷电容分为贴装陶瓷电容和插装陶瓷电容两大类。贴装陶瓷电容是多层陶瓷电容,一般耐压不会超过50V,而层数可以达到4000层,插装的陶瓷电容中包括圆片陶瓷电容和独石电容。圆片陶瓷电容也称瓷片电容,是单层的,耐压从50V~6000V都较为普遍。同样容值下,瓷片电容受温度影响更小,更适合应用在微弱信号放大电路的滤波中。独石电容全称是片式多层陶瓷电容器,(网上有资料说其实就是陶瓷贴片电容的

    2022年8月22日

发表回复

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

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