mysql log_来吧,了解下mysql有哪些log

概述

mysql里面有很多log,比如用于主从同步的bin_log,防止数据丢失的redo_log,慢查询日志slow_log等等

redo log

InnoDB有buffer pool(简称bp)。

bp是数据库页面的缓存,对InnoDB的任何修改操作都会首先在bp的page上进行,然后这样的页面将被标记为dirty并被放到专门的flush list上,后续将由master thread或专门的刷脏线程阶段性的将这些页面写入磁盘(disk or ssd)。这样的好处是避免每次写操作都操作磁盘导致大量的随机IO,阶段性的刷脏可以将多次对页面的修改merge成一次IO操作,同时异步写入也降低了访问的时延。然而,如果在dirty page还未刷入磁盘时,server非正常关闭,这些修改操作将会丢失,如果写入操作正在进行,甚至会由于损坏数据文件导致数据库不可用。为了避免上述问题的发生,Innodb将所有对页面的修改操作写入一个专门的文件,并在数据库启动时从此文件进行恢复操作,这个文件就是redo log file。 这样的技术推迟了bp页面的刷新,从而提升了数据库的吞吐,有效的降低了访问时延。 带来的问题是额外的写redo log操作的开销(顺序IO,当然很快),以及数据库启动时恢复操作所需的时间。

Undo Log

Undo

Log是为了实现事务的原子性,在MySQL数据库InnoDB存储引擎中,还用UndoLog来实现多版本并发控制(简称:MVCC)。

事务的原子性(Atomicity)

事务中的所有操作,要么全部完成,要么不做任何操作,不能只做部分操作。如果在执行的过程中发了错误,要回滚(Rollback)到事务开始前的状态,就像这个事务从来没有执行过。

bin-log

binlog有三种格式:Statement、Row以及Mixed。

Statement

基于SQL语句的复制(statement-based replication,SBR),

每一条会修改数据的sql语句会记录到binlog中。优点是并不需要记录每一条sql语句和每一行的数据变化,减少了binlog日志量,节约IO,提高性能。缺点是在某些情况下会导致master-slave中的数据不一致(如sleep()函数, last_insert_id(),以及user-defined functions(udf)等会出现问题)

Row

基于行的复制(row-based replication,RBR),默认

不记录每条sql语句的上下文信息,仅需记录哪条数据被修改了,修改成什么样了。而且不会出现某些特定情况下的存储过程、或function、或trigger的调用和触发无法被正确复制的问题。缺点是会产生大量的日志,尤其是alter table的时候会让日志暴涨。

Mixed

混合模式复制(mixed-based replication,MBR)。

以上两种模式的混合使用,一般的复制使用STATEMENT模式保存binlog,对于STATEMENT模式无法复制的操作使用ROW模式保存binlog,MySQL会根据执行的SQL语句选择日志保存方式。

查看binlog_format

show variables like 'binlog_format'

relay_log:

Mysql 主节点将binlog写入本地,从节点定时请求增量binlog,主节点将binlog同步到从节点。 从节点单独进程会将binlog

拷贝至本地 relaylog中。

从节点定时重放relay log。

slow-log

慢查询就是通过设置来记录超过一定时间的SQL语句,一般通过slowlog找到影响系统性能的sql

开启slow-log

在my.conf 中增加

slow_query_log = 1 // 开启slow-log long_query_time = 1 //

查询时间超过1s的sql会被记录

分析slow-log

在slow-log目录下执行

more slow-query.log

6c5a5fef9970aa945d72fb7b3427460b.png

Query_time: 查询耗时

Rows_examined: 检查了多少条记录

Rows_sent : 返回了多少行记录(结果集)

通过分析slow-log文件,可以找到最慢的sql

按Rows_examined 逆序,列出前100条

grep Rows_examined slow-query.log | sort -g -k9 -r|uniq -u |head -100

指定Rows_examined一值,查找

grep -A 1 -B 2 "Rows_examined: 24460" slow-query.log

看到每秒的慢查询统计

awk '/^#Time:/{print $3,$4,c;c=0}/^# User /{c++}' slow-query.log >/tmp/aaa.log

mysqldumpslow命令

访问时间最长的10个sql语句

mysqldumpslow -t 10 /usr/local/mysql/log/3304/slowquery.log

访问次数最多的10个sql语句

mysqldumpslow -s c -t 10 /usr/local/mysql/log/3304/slowquery.log

访问记录集最多的10个sql

mysqldumpslow -s r -t 10 /usr/local/mysql/log/3304/slowquery.log

得到按照时间排序的前10条里面含有左连接的查询语句

mysqldumpslow -s t -t 10 -g “left join” /usr/local/mysql/log/3304/slowquery.log

详见mysqldumpslow -h

general_log

general_log可以记录所有执行过的sql,用于排查分析sql性能,但记录log会增加系统负担,可以暂时开启,分析完之后再关闭general_log

开启general_log

641d00c324dd80fa314c610ba7030627.png

查看general_log

8fb010b9c7d8d28cdf3261447ffb7067.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/340243.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

为什么jupyterlab运行程序的时候会自动停止_气象人的JupyterLab

上两篇文章Jupyterlab安装配置教程Jupyter多用户配置中讲了Jupyter的主要部署方法,老实说,对新手很不友好,我也不想再经历一次这样的过程,尤其是Basemap的安装。所以,咱直接打包个镜像吧。不得不说Docker真是个拯救了无…

bfc是什么_全面分析总结BFC原理及实践

前言 经常在面试中被问到“如何清除浮动?”、“为什么 overflow: hidden 可以清除浮动?”等等比较基础的问题。虽然这些题目案在各种写面试题的文章中都有提供答案,但这种教科书式的问答肯定不是我们的目的,与其记住答案不如彻底掌…

学会了很多计算机小技巧,超实用的八个电脑小技巧,全都学会让你成为电脑高手...

Part one 截屏我们在使用电脑的过程中,有时候会使用截屏功能。AltCtrlA诶?怎么不行?原来这是QQ特有的快捷键,如果不登录QQ的话,是使用不了的。那么我们就只能先登录QQ,然后再一步步的操作。那在没网的情况下…

mysql从库执行delete停止_MySQL主库大表执行delete语句,Ctrl+C具体发生了什么分析...

MySQL主库大表执行delete语句,CtrlC具体发生了什么分析1、查看表结构localhost.qt>show create table doctor_stats_backup\G*************************** 1. row ***************************Table: doctor_stats_backupCreate Table: CREATE TABLE doctor_stat…

python打开火狐浏览器打不开网页_PHP让指定网页只能在微信内置浏览器打开 附代码...

有时候,有些网页不方便在电脑或者手机QQ打开,比如:想创建一个微信活动页面,在电脑或者QQ打开会导致某些功能失效,页面错版等情况,为了避免出现这种情况,其实我们只需让它只能在微信打开就可以了…

我的世界服务器设置op显示,我的世界设置op权限 | 手游网游页游攻略大全

发布时间:2017-08-19导读:不少我的世界腐竹都会收留一些OP帮助自己管理服务器,那么如果想取消OP的权限该如何操作呢?下面小编就来教教大家如何取消OP权限. 问:我的世界如何取消OP权限? 答:/deop 用户名,就是取消OP,/op 用户名 ...标签:我的世界 问答帮…

python turtle画彩虹的代码_如何用python海龟库画彩虹

python生成的彩虹效果,大家可以参考:使用的python版本:3.7.0 ,以下为源代码:# rainbow.py from turtle import * from random import * def HSB2RGB(hues): hues hues * 3.59 #100转成359范围 rgb [0.0,0.0,0.0] i …

vsphere虚拟克隆虚拟服务器,vSphere实战攻略2:虚拟机模板与克隆

【IT168 专稿】 (接上篇)"模板"是VMware为虚拟机提供的一项功能,可以让用户在其中一台虚拟机的基础上,很方便的"派生"或"克隆"出多台虚拟机,这减轻了管理员的负担。1.1 创建模板虚拟机在使用模板之前&#xff…

java ee maven_针对新手的Java EE7和Maven项目–第6部分

java ee maven从前面的部分恢复 第1 部分 , 第2 部分 , 第3 部分 , 第4 部分 , 第5部分 在上一篇文章(第5部分)中,我们发现了如何使用Arquillian(我们的EJB服务)进行单元…

windows系统git服务器启动,windowsServer服务器上搭建GIt服务器

十年河东,十年河西,莫欺少年穷学无止境,精益求精摸索了一天,终于把服务器端Git搭建完毕。记录下来,省的以后踩坑。如下:在官网搜索框中输入:download 搜索下载型选择为Java选择开发版然后下载下…

如何在黄瓜中进行后端测试

黄瓜是一种规范语言的执行框架。 它并不是要成为测试语言,而是用于创建测试自动化。 黄瓜最适合出现一些现实世界中的参与者互动并取得某种成果的情况。 当可以从用户的角度编写它时,它特别有用。 Given Sarah is a premium club member When Sarah lo…

云服务器 生物信息学,云服务器 生物信息学

云服务器 生物信息学 内容精选换一换挂载有NVMe SSD盘的Linux弹性云服务器(如P1型云服务器)发生故障时,需联系管理员通过异地重建的方式进行恢复,新建故障弹性云服务器。如果故障弹性云服务器在/etc/fstab中设置了NVMe SSD盘的开机自动挂载功能&#xff…

python图像转字符画_python图像处理-字符画风格图片

前言 字符画图片,顾名思义就是由一个个字符组成的图片,下面这张图片很容易帮助你理解,如果我们可以将字符排列好,让他看上去像一个物体的形状,那么最后再将它输出保存为一张图片就可以实现了。下面的这些形状同样可以使…

react生命周期函数_如何优雅的消灭掉react生命周期函数

开源不易,感谢你的支持,❤ star concent^_^序言在react应用里,存在一个顶层组件,该组件的生命周期很长,除了人为的调用unmountComponentAtNode接口来卸载掉它和用户关闭掉浏览器tab页窗口,该顶层组件是不会…

jolokia_Hawtio和Jolokia的Hibernate统计

jolokia企业Java的很大一部分处理数据。 在企业设置中使用数据的所有不同方式中,仍然存在使用任何种类的O / R映射的行之有效且广泛教授的方法。 JPA标准使每个人都比较容易使用它,并且它也应该是可移植的。 但是,我们不要谈论迁移细节。 O /…

JVM垃圾收集和优化

总览 在对系统进行性能相关问题的故障排除时,内存优化是一个需要深入分析每个系统在内存中存储的内容,存储时间和访问模式的地方。 这篇文章是要在背景信息上进行注释,并在此工作中要注意一些要点,这些工作要专门针对基于Java的实…

redis desktop manager连不上redis_Redis安装教程

Ⅰ 简介Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如字符串(strings),散列(hashes&#…

c++如何将int数组中的值取出*号运算符_如何用动态规划巧妙解决 “双十一” 购物时的凑单问题?羊毛薅起来!!!...

点击上方“程序员大白”,选择“星标”公众号重磅干货,第一时间送达今年过去的 “双十一” ,你有薅到羊毛吗?每年的双十一,会有各种促销活动,比如 “满 300元减 80 元”。假如你女朋友的购物车中有 n 个(n &…

python操作界面_Python使用PyQt5的Designer工具创建UI界面

一、Designer-UI编辑器 Designer是pyqt5-tools带的工具,默认可以在Python安装目录下找到的。我的之前项目导入过pyqt5-tools,所以我直接全盘搜索到了。打开designer后,我们可以编辑我们想要的UI界面,下面是我编辑的测试界面&#…

python统计词频_Python统计四六级考试的词频

Python统计四六级考试的词频此文首发于公众号 「Python知识圈」, 欢迎直接去公众号查看阅读文本大概需要 4.6 分钟。今天是教师节,先祝天下所有老师教师节快乐,感谢您在我学生时代对我的谆谆教诲。现在是开学之初,风华正茂的青年才…