MySQL日志系统

日志系统是我们在进行测试或者遇到什么问题时候必要的分析工具。

mysql中也存在着日志系统:

  SQL慢查询日志:

   用于记录mysql中响应时间超过一定值的sql语句;

   检查是否开启慢查询:

                 

show varibales like 'slow_query_log';

开启/关闭慢查询日志:

#0为关,1为开
set global slow_query_log=1/0;

在这里设置开关慢查询只是临时设置的,重启mysql服务后又会恢复到默认,如果想永久开启需要修改my,ini的配置文件。

查看和修改时间限制

#查看
show variables like 'long_query_time';
#修改
set  long_query_time=时间;

修改了时间并不会马上生效,需要重新连接mysql服务器。

查看/修改日志存储位置

#查看存储位置

show variables like 'show_query_log_file';

#修改存储的位置
 
set global slow_query_log_file = 路径

#修改存储方式为表

#1
set global log_output ='table';

#2.在mysql数据库下有一个slow_log的表,用表存储会把日志信息存在该表中
set global slow_query_log_file = slow_log;

全局日志:

profiles:

    查看全局的sql花费的时间,不够精确。

查看是否开启全局日志:

show variables like 'profiling';

开启/关闭全局日志:

#开为1,关为0
set profiling =1;

修改后会立刻生效,他会记录你的一切sql语句分析。

查看语句分析:

show profiles;

精细查看(sql诊断):

在profile记录中会有一个query_id,可以通过id来去分析更精确的信息。

#all可以换成你要查询的字段

show profile all for 查询的query_id;

#一般情况要查询的字段
show profile cpu,block io for 查询的query_id

具体字段含义请参考:https://blog.csdn.net/ty_hf/article/details/54895026

全局查询日志:

记录开启之后的全部sql语句,测试的时候开,上线千万不要开

查看开启状态:

show variables like general_log;

开启/关闭

#关为0,开为1
set global general_log =1;

查看存储位置:

show variables like 'general_log_file';

修改存储位置:

#修改到其他位置

set global general_log_file ='地址';

#修改为表存储,表为mysql下的general.log

set global log_output='table';

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值