MySql运维篇---008:日志:错误日志(1),2024年最新转疯了

本文详细介绍了MySQL的日志管理,包括错误日志、查询日志和慢查询日志的配置与清理。同时,深入探讨了主从复制的原理和搭建过程,强调了主从复制在数据一致性、读写分离和备份中的作用。
摘要由CSDN通过智能技术生成
1.2.4 删除

对于比较繁忙的业务系统,每天生成的binlog数据巨大,如果长时间不清除,将会占用大量磁盘空间。可以通过以下几种方式清理日志:

指令 含义
reset master 删除全部 binlog 日志,删除之后,日志编号,将从 binlog.000001重新开始
purge master logs to 'binlog.*****' 删除 ***** 编号之前的所有日志
purge master logs before 'yyyy-mm-dd hh24:mi:ss' 删除日志为 “yyyy-mm-dd hh24:mi:ss” 时间点之前产生的所有日志

也可以在mysql的配置文件中配置二进制日志的过期时间,设置了之后,二进制日志过期会自动删除。

mysql -uroot -p1234

#查看系统变量,在mysql命令行中执行
#单位是秒,默认过期时间为30天,到期之后会自动删除
show variables like '%binlog\_expire\_logs\_seconds%';

在这里插入图片描述

测试:

客户端1:

mysql -uroot -p1234

#删除000002之前的日志文件,不包含000002
purge master logs to 'binlog.000002';


在这里插入图片描述

客户端2:

cd /var/lib/mysql

#可以看到二进制日志文件和索引文件
ll


在这里插入图片描述

1.3 查询日志

查询日志中记录了客户端的所有操作语句,而二进制日志不包含查询数据的SQL语句。默认情况下, 查询日志是未开启的

mysql -uroot -p1234

#检查参数查看开关是否开启
#可以看到默认是关闭的以及日志文件所处位置和文件名
show variables like '%general%';

在这里插入图片描述

如果需要开启查询日志,可以修改MySQL的配置文件 /etc/my.cnf 文件,添加如下内容:

vim  /etc/my.cnf 

#该选项用来开启查询日志 , 可选值 : 0 或者 1 ; 0 代表关闭, 1 代表开启
general_log=1

#设置日志的文件名 , 如果没有指定, 默认的文件名为 host\_name.log
general_log_file=mysql_query.log

#重启mysql服务
systemctl restart mysqld.service

#查看这个目录下是否会生成此日志文件
cd /var/lib/mysql/

ll

在这里插入图片描述

在这里插入图片描述

开启了查询日志之后,在MySQL的数据存放目录,也就是 /var/lib/mysql/ 目录下就会出现mysql_query.log 文件。之后所有的客户端的增删改查操作都会记录在该日志文件之中,长时间运行后,该日志文件将会非常大。所以用不上此日志文件,我们可以把它关上。

测试

客户端1:


mysql -uroot -p1234

use db01;

#执行查询操作(前提是已经登录)
select \* from stu;

#执行更新操作
update stu set age=100 where id=7; 


在这里插入图片描述
客户端2:

cd /var/lib/mysql/

#前提是已经进入到了这个目录,并且目录下有这个文件(上面已经配置过了)
#实时刷新此日志文件尾部的内容(tail查看文件尾部,-f表示实时刷新)
tail -f mysql_query.log


可以看到所有的DDL和DML操作都会在日志表当中记录。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值