暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MySQL日志系统

大学生IT学习之家 2019-06-03
188

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


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';





复制


文章转载自大学生IT学习之家,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论