Linux-MySQL日志管理

1.日志概述

1.1什么是MySQL日志

MySQL 日志用于记录数据库运行期间各种行为动作(DDL,DML,DQL,DCL)。可以是文件、文本等存储形式。记录了 MySQL 从启动、运行到结束的整个生命周期中的关键行为。

1.2MySQL日志的作用

MySQL日志作用
1.故障排查帮助诊断数据库运行问题
2.性能分析识别性能瓶颈和慢查询
3.数据恢复提供数据恢复基础
4.安全审计记录数据库访问和操作行为
5.主从复制支持数据库复制与数据同步

1.3MySQL日志类型

MySQL日志分类
日志类型主要作用默认状态
错误日志(Error Log)记录启动、关闭、错误、警告信息开启
通用查询日志(General Query Log)记录所有客户端连接和执行的数据库关闭
二进制日志(Binary Log)记录所有修改数据库内容的操作,用于数据恢复和主从复制关闭(5.7)、开启(8.0)
慢查询日志(Slow Query Log)记录执行时间超过阈值的查询,用于性能优化关闭
中继日志(Relay Log)在主从复制中,从服务器用于存储主服务器二进制日志事件主从时开启
重做日志(Redo Log)InnoDB引擎特有,保持事务的持久性和恢复能力开启
回滚日志(Undo Log)记录事务回滚信息,支持事务的原子性开启

2.日志配置与管理

MySQL配置文件
/etc/my.cnf

2.0日志位置

MySQL日志位置
源码安装MySQL
数据存放目录/usr/local/mysql/data
错误日志/usr/local/mysql/data/mysqld.log
二进制日志/usr/local/mysql/data/binlog.000001
RPM包安装MySQL
数据存放目录/var/lib/mysql
错误日志/var/log/mysqld.log
二进制日志/var/lib/mysql/binlog.000001

2.1错误日志-Error Log

查看错误日志文件路径
SHOW VARIABLES LIKE 'log_error';

相关配置-vim /etc/my. cnf(需重启MySQL服务)

log-error = /usr/local/mysql/data/mysqld.log -更改改日志路径

2.2通用查询日志-General Query Log

查看通用查询日志文件路径
SHOW VARIABLES LIKE 'general%';

相关配置-vim /etc/my. cnf(需重启MySQL服务)

general_log = 1 -启动通用查询日志
general_log_file = /var/lib/mysql/general.log -更改日志路径

MySQL中可以执行
SET GLOBAL general_log = ON;
SET GLOBAL general_log_file = '/var/lib/mysql/general.log';

2.3慢查询日志-Slow Query Log

查看慢日志文件路径
SHOW VARIABLES LIKE 'slow_query%';

查看慢日志记录规定时间
SHOW VARIABLES LIKE 'long_query_time';

相关配置-vim /etc/my. cnf(需重启MySQL服务)

slow_query_log = 1 -启动慢查询日志

slow_query_log_file = /usr/local/mysql/data/slow_query.log -更改慢查询日志路径

long_query_time = 5 -设置慢查询被记录的时间

MySQL中可以执行

SET GLOBAL slow_query_log = ON;
SET GLOBAL slow_query_log_file = '/usr/local/mysql/data/slow_query.log';
SET GLOBAL long_query_time = 5.0;

2.4中继日志-Relay Log

中继日志用于主从复制环境,从服务器通过中继日志暂存从主服务器接收的二进制日志事件。

2.4.1以下命令均在从服务器执行

显示从库状态
SHOW SLAVE STATUS\G

显示主库状态
SHOW MASTER STATUS\G

查看中继日志相关参数
SHOW VARIABLES LIKE '%relay%';

中继日志信息表
SELECT * FROM mysql.slave_relay_log_info;

3.二进制日志

二进制日志记录所有数据变更,用于:数据恢复、主从复制、数据审计

3.1查看二进制日志状态

SHOW VARIABLES LIKE '%log_bin%';

3.2查看当前二进制日志文件

SHOW BINARY LOGS;

相关配置-vim /etc/my. cnf(需重启MySQL服务)

log-bin = /usr/local/mysql/data/mysql-bin -二进制日志文件前缀

server-id = 1 -服务器唯一标识符(主从复制必须)

binlog_format = ROW -修改二进制日志文件格式为ROW

SET GLOBAL binlog_format = 'ROW'; -动态修改日志格式

3.3二进制日志格式

二进制日志格式
格式特点优缺点使用场景
STATEMENT记录SQL语句本身,而不是数据本身文件小,复制效率高简单查询,无函数依赖
ROW记录每一行数据被修改了哪些内容,而不是SQL语句文件大,回复速度慢数据一致性要求高
MIXED根据执行的SQL语句自动选择使用什么格式管理相对复杂大多数生产环境

3.4查看二进制日志内容

3.4.1使用mysqlbilog工具查看

mysqlbinlog /usr/local/mysql/data/mysql-bin.000001

3.4.2解码查看详细内容

mysqlbinlog -v --base64-output=DECODE-ROWS /usr/local/mysql/data/mysql-bin.000001 mysqlbinlog -v /usr/local/mysql/data/mysql-bin.000001

3.5二进制日志管理

3.5.1查看所有二进制日志文件

SHOW BINARY LOGS;

3.5.2刷新日志,创建新的二进制日志文件

FLUSH LOGS;

3.5.3删除指定时间前的二进制日志

PURGE BINARY LOGS BEFORE '2026-01-19 12:00:00';

3.5.4删除所有二进制日志

RESET MASTER;

3.5.5临时关闭当前会话的二进制日志记录

SET sql_log_bin = 0;

3.6二进制日志恢复数据案例

实验环境

先创建db5数据库,在删除

3.6.1基于时间点恢复

首先查看binlog日志找到创建db5的记录

使用命令恢复数据
mysqlbinlog -v /var/lib/mysql/binlog.000011 --start-datetime="2026-01-19 20:30:34" --stop-datetime="2026-01-19 20:30:59" | mysql -uroot -p'Root@123'

3.6.2基于位置服务

首先查看binlog日志找到创建db5的记录
mysqlbinlog /var/lib/mysql/binlog.000011

使用命令恢复数据
mysqlbinlog -v /var/lib/mysql/binlog.000011 --start-position=601 --stop-position=706 | mysql -uroot -p'Root@123'

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

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

相关文章

OpenCode部署案例:中小团队AI编程助手落地实践

OpenCode部署案例:中小团队AI编程助手落地实践 1. 引言 1.1 业务场景描述 在当前快速迭代的软件开发环境中,中小研发团队面临着资源有限、人力紧张、技术栈多样等现实挑战。如何在不增加人员成本的前提下提升编码效率、降低出错率、加快项目交付速度&…

Gradio界面打不开?Live Avatar常见问题全解答

Gradio界面打不开?Live Avatar常见问题全解答 1. 引言 随着数字人技术的快速发展,阿里联合高校开源的 Live Avatar 模型凭借其高质量、实时驱动和灵活可配置的特点,成为当前生成式AI领域的重要实践项目之一。该模型基于14B参数规模的DiT架构…

Fun-ASR-MLT-Nano-2512语音招聘:面试语音分析系统

Fun-ASR-MLT-Nano-2512语音招聘:面试语音分析系统 1. 章节名称 1.1 技术背景 随着远程办公和线上招聘的普及,企业对自动化、智能化的面试评估工具需求日益增长。传统的人工听录与评分方式效率低、主观性强,难以满足大规模人才筛选的需求。…

看了就想试!BSHM镜像打造专业级抠图效果

看了就想试!BSHM镜像打造专业级抠图效果 1. 引言:人像抠图技术的演进与挑战 随着数字内容创作需求的爆发式增长,图像处理中的人像抠图(Human Matting)技术正变得愈发重要。传统基于边缘检测或颜色分割的方法在复杂背…

避坑指南:用Docker一键部署Qwen2.5-7B-Instruct的常见问题解决

避坑指南:用Docker一键部署Qwen2.5-7B-Instruct的常见问题解决 1. 引言 随着大语言模型能力的持续演进,Qwen2.5系列在知识广度、编程与数学推理、长文本生成及结构化数据理解等方面实现了显著提升。其中,Qwen2.5-7B-Instruct 作为经过指令微…

没显卡怎么跑bert-base-chinese?云端GPU 5分钟部署,1块起步

没显卡怎么跑bert-base-chinese?云端GPU 5分钟部署,1块起步 你是不是也遇到过这种情况:作为一名前端开发者,想在项目里加个中文文本分类功能,比如自动识别用户评论是好评还是差评。你查了一圈,发现最靠谱的…

亲子阅读材料生成:故事配图自动化部署案例

亲子阅读材料生成:故事配图自动化部署案例 随着AI生成技术的快速发展,个性化、高质量儿童内容的创作门槛正在显著降低。在亲子阅读场景中,图文并茂的故事书不仅能提升孩子的阅读兴趣,还能增强认知发展。然而,传统插画…

告别繁琐配置!YOLOE镜像开箱即用实战指南

告别繁琐配置!YOLOE镜像开箱即用实战指南 在目标检测与图像分割领域,传统模型往往受限于封闭词汇表和复杂的部署流程。开发者常常面临环境依赖冲突、模型权重下载缓慢、提示工程难调优等现实问题。而 YOLOE 官版镜像 的出现,彻底改变了这一局…

PyTorch 2.8图像生成实战:没显卡也能玩,云端2块钱出图

PyTorch 2.8图像生成实战:没显卡也能玩,云端2块钱出图 你是不是也遇到过这种情况?看到网上那些用AI生成的艺术画、梦幻场景、赛博朋克风角色图,心里直痒痒,想自己动手试试。结果一搜教程,满屏都是“需要NV…

工业设备PCB防护涂层技术:新手入门必看

工业设备PCB防护涂层实战指南:从选材到工艺,一文讲透你有没有遇到过这样的问题?一台原本运行正常的工业控制器,在潮湿的车间里用了不到半年,就开始频繁重启、采样漂移,拆开一看——焊点发黑、铜箔氧化&…

麦橘超然影视宣传:电影海报风格迁移实战

麦橘超然影视宣传:电影海报风格迁移实战 1. 引言 1.1 业务场景描述 在影视宣发过程中,高质量的视觉素材是吸引观众注意力的核心要素之一。传统电影海报设计依赖专业美术团队,周期长、成本高,难以快速响应市场变化。随着生成式A…

FSMN VAD部署教程:Linux环境从零配置指南

FSMN VAD部署教程:Linux环境从零配置指南 1. 引言 1.1 技术背景与应用场景 语音活动检测(Voice Activity Detection, VAD)是语音信号处理中的关键预处理步骤,广泛应用于语音识别、会议转录、电话录音分析和音频质量检测等场景。…

停止使用 innerHTML:3 种安全渲染 HTML 的替代方案

innerHTML 真的是前端世界里最“顺手也最危险”的按钮之一。 它方便到让人上瘾——也脆弱到让攻击者一旦把恶意内容塞进你的数据里&#xff0c;你的页面就会“热情执行”。比如这种经典投毒&#xff1a;<img srcx onerroralert(1)>只要你把它丢进 innerHTML&#xff0c;浏…

开源语音技术突破:FSMN-VAD模型结构深度解析

开源语音技术突破&#xff1a;FSMN-VAD模型结构深度解析 1. FSMN-VAD 离线语音端点检测控制台 在语音交互系统、自动语音识别&#xff08;ASR&#xff09;预处理和长音频切分等场景中&#xff0c;如何高效准确地识别出音频中的有效语音片段&#xff0c;剔除静音或噪声干扰&am…

CV-UNet应用案例:网店商品图批量标准化处理

CV-UNet应用案例&#xff1a;网店商品图批量标准化处理 1. 引言 1.1 电商图像处理的现实挑战 在电商平台运营中&#xff0c;商品图片的质量直接影响转化率。然而&#xff0c;大量商品图往往存在背景杂乱、尺寸不一、光照不均等问题&#xff0c;传统人工抠图耗时耗力&#xf…

Speech Seaco Paraformer是否支持Ogg?小众格式兼容性测试报告

Speech Seaco Paraformer是否支持Ogg&#xff1f;小众格式兼容性测试报告 1. 背景与问题提出 在语音识别&#xff08;ASR&#xff09;的实际应用中&#xff0c;音频文件的格式多样性常常成为影响系统可用性的关键因素。尽管WAV和MP3是主流格式&#xff0c;但在某些场景下——…

SGLang性能实战对比:RadixAttention如何提升KV缓存命中率?

SGLang性能实战对比&#xff1a;RadixAttention如何提升KV缓存命中率&#xff1f; 1. 引言 随着大语言模型&#xff08;LLM&#xff09;在实际业务中的广泛应用&#xff0c;推理效率和部署成本成为制约其规模化落地的关键因素。尤其是在高并发、多轮对话等复杂场景下&#xf…

SenseVoice Small语音识别实战|附情感与声学事件标签提取技巧

SenseVoice Small语音识别实战&#xff5c;附情感与声学事件标签提取技巧 1. 引言&#xff1a;为什么选择SenseVoice Small进行语音识别 在当前AI语音技术快速发展的背景下&#xff0c;语音识别已不再局限于简单的文字转录。越来越多的应用场景需要模型具备更深层次的音频理解…

NotaGen部署优化:多GPU并行生成配置指南

NotaGen部署优化&#xff1a;多GPU并行生成配置指南 1. 背景与挑战 1.1 NotaGen模型简介 NotaGen是一款基于大语言模型&#xff08;LLM&#xff09;范式构建的古典符号化音乐生成系统&#xff0c;由开发者“科哥”通过WebUI二次开发实现。该模型能够根据用户选择的音乐时期、…

RexUniNLU性能优化:让中文NLP任务提速50%

RexUniNLU性能优化&#xff1a;让中文NLP任务提速50% 获取更多AI镜像 想探索更多AI镜像和应用场景&#xff1f;访问 CSDN星图镜像广场&#xff0c;提供丰富的预置镜像&#xff0c;覆盖大模型推理、图像生成、视频生成、模型微调等多个领域&#xff0c;支持一键部署。 1. 引言 …