Mysql DBA学习笔记(日志)

四种日志:错误日志、二进制日志、查询日志、慢查询日志

一、错误日志

错误日志记录错误详细信息,该日志默认开启。

默认存放目录:/var/log/

默认日志文件名:mysqld.log
查看日志变量:

show variables like '%log_error%'

tail指令查看文件尾部(如50行)日志:

tail -50 /var/log/mysql.log
实时查看文件尾部输出的日志:
tail -f /var/log/mysql.log

一旦文件有新日志录入,就会实时追加在上面。

二、二进制日志(BinLog)

二进制日志记录了所有DDL(数据定义语言)语句和DML(数据操纵语言)语句。

DDL:

DML:

但不包括数据查询语句(select,show)语句。

该日志也默认自动开启。

作用:

1)数据恢复

2)主从复制

查看日志变量:

show variables like '%log_bin%'

其中:

log_bin_basename记录日志文件

log_bin_index记录日志索引文件

二进制日志格式:

查看当前选用的日志格式:

show variables like '%binlog_format%'

修改二进制日志格式:

修改mysql的配置文件:

vim/etc/my.cnf

binlog_format = statement(从默认的ROW格式改为STATEMENT)

保存:

:x

接着重新启动mysql

systemctl restart mysqld

查看二进制日志文件(mysqlbinlog):

mysqlbinlog 二进制文件名

如果是基于" Row "的二进制日志格式,需要通过" -v "才能看到对应数据。

其中:

Where 表示更新前的数据

Set 表示更新后的数据

二进制日志文件的删除(减少磁盘空间的占用)

配置二进制日志文件过期时间,过期后自动删除(默认过期时间:30天)

show variables like '%binlog_expire_logs_seconds%'

三、查询日志

二进制日志 ------不包括查询数据的sql语句(select)。
查询日志 ------记录了客户端的所有操作语句。

默认状态下,查询日志不开启

查看查询日志的状态变量:

show variables like '%general%'

开启查询日志:

修改mysql的配置文件:

vim/etc/my.cnf

开启查询日志:

general_log = 1

保存:

:x

接着重新启动mysql:

systemctl restart mysqld

四、慢查询日志

慢查询日志 记录所有执行时间超过参数long_query_time设置值

且扫描记录数>=min_examined_row_limit的所有SQL语句的日志。

默认未开启
long_query_time 默认值为10秒

修改mysql的配置文件:

vim/etc/my.cnf

开启慢查询日志:

slow_query_log = 1

修改时间参数:

long_query_time = 2

保存:

:x

接着重新启动mysql:

systemctl restart mysqld

实时查看文件尾部输出的日志:
tail -f localhost-slow.log

关于事务的日志:1)redo log 2)undo log在之前学习笔记中有所记录。

参考作者:黑马程序员 - Mysql数据库从入门到精通

相关推荐
·云扬·16 分钟前
MySQL Binlog 配置指南与核心作用解析
数据库·mysql·adb
盐焗西兰花33 分钟前
鸿蒙学习实战之路-Reader Kit构建阅读器最佳实践
学习·华为·harmonyos
天空属于哈夫克335 分钟前
Java 版:利用外部群 API 实现自动“技术开课”倒计时提醒
数据库·python·mysql
luoluoal1 小时前
基于深度学习的web端多格式纠错系统(源码+文档)
python·mysql·django·毕业设计·源码
深蓝海拓1 小时前
PySide6从0开始学习的笔记(二十七) 日志管理
笔记·python·学习·pyqt
慎独4131 小时前
科学赋能,让孩子专注高效爱上学习
学习
LGL6030A1 小时前
Java学习历程26——线程安全
java·开发语言·学习
学历真的很重要2 小时前
【系统架构师】第二章 操作系统知识 - 第二部分:进程管理(详解版)
学习·职场和发展·系统架构·系统架构师
Nebula_g2 小时前
线程进阶: 无人机自动防空平台开发教程(更新)
java·开发语言·数据结构·学习·算法·无人机
crossaspeed3 小时前
MySQL-索引
mysql