mysqlbinlog 生产环境问题排查实践

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: mysqlbinlog 生产环境问题排查实践

binlog 简介

在这里插入图片描述

MySQL 的二进制日志是通过二进制文件形式记录的,可以通过以下方式设置其格式:

  1. 打开 MySQL 配置文件(my.cnf),找到 [mysqld] 段,添加以下语句以开启二进制日志功能:
log-bin = /path/to/mysql/binlog/mysql-bin

其中,/path/to/mysql/binlog/ 是你想要将二进制文件保存的目录,mysql-bin 是二进制日志文件的前缀。

  1. 若要设置二进制文件的最大大小,可以添加以下语句:
max_binlog_size = 100M

其中,100M 是最大文件大小,可以根据需要进行调整。

  1. 若要开启 MySQL 复制功能,则需设置服务器 ID 和二进制日志格式。可以添加以下语句:
server-id = 1
binlog-format = ROW

其中,1 是服务器 ID,可以设置为任意值;ROW 表示使用行级别的二进制日志格式,这是 MySQL 推荐的日志格式,也是能最大限度地保留数据更改的详细信息。

  1. 在修改完以上配置后,重启 MySQL 服务器,使配置生效。

以上就是 MySQL 二进制日志的基本格式设置,可以通过调整这些设置来更好地控制和管理 MySQL 二进制日志。

1.查看日志

./mysqlbinlog --no-defaults  mysql_bin.000697 | less

在这里插入图片描述

2.查看日志的sql

./mysqlbinlog --base64-output=decode-rows -v  mysql_bin.000697 | less

在这里插入图片描述

3.统计各个数据库的表操作

./mysqlbinlog  mysql_bin.000697 |grep Table_map | awk -F ' ' '{print $11}' | sort | uniq -c

4.解码到文件中进一步的分析

./mysqlbinlog  mysql_bin.000697 > binlog000697.log
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
8月前
|
Kubernetes 关系型数据库 MySQL
ChaosBlade常见问题之数据库进行故障注入报错ibdata1文件异常如何解决
ChaosBlade 是一个开源的混沌工程实验工具,旨在通过模拟各种常见的硬件、软件、网络、应用等故障,帮助开发者在测试环境中验证系统的容错和自动恢复能力。以下是关于ChaosBlade的一些常见问题合集:
188 1
|
7月前
|
SQL 运维 关系型数据库
MySQL数据库运维第一篇(日志与主从复制)
MySQL数据库运维第一篇(日志与主从复制)
|
6月前
|
缓存 运维 监控
开发与运维内存问题之dmesg,它在故障排查中的作用如何解决
开发与运维内存问题之dmesg,它在故障排查中的作用如何解决
59 0
|
8月前
|
SQL
线上问题排查日志实战
线上问题排查日志实战
58 1
|
监控 Java 测试技术
项目生产环境问题如何排查
在项目的生产环境中,问题的排查是非常重要的,它可以帮助我们快速定位并解决问题,保证项目的正常运行。本文将介绍一些常见的项目生产环境问题排查方法。
744 0
|
运维 监控 安全
自动化测试如何解决日志问题
日志是技术人员处理工作很重要的一个辅助工具和手段,运维同学可以及时的通过日志发现系统隐患和故障并及时处理问题,开发同学解决问题离不开日志信息的协助定位,测试同学在测试过程中也需要借助日志来发现和确定bug。可以说日志就相当于我们观察系统的眼睛,没有日志就相当于失去了眼睛,系统也失去了可观测性。
自动化测试如何解决日志问题
|
运维 PHP Perl
总结一些线上问题排查的命令,可能用得到!
开发运维,统计所遇到的运维问提。运维问提排查,以下场景,你可能遇到?
185 0
总结一些线上问题排查的命令,可能用得到!
|
SQL 关系型数据库 MySQL
MySQL大无语事件:一次生产环境的死锁事故,看看我怎么排查
今天要分享的是在生产环境中出现的一次算得上比较诡异的死锁事件, 不过庆幸的是没有产生较大的业务损失.
|
8月前
|
数据采集 运维 Kubernetes
【最佳实践】使用CloudLens排查iLogtail重启问题
本文主要介绍如何使用CloudLens for SLS定位和解决iLogtail日常使用中的常见问题之一:iLogtail异常重启问题。
691 0
【最佳实践】使用CloudLens排查iLogtail重启问题
|
SQL NoSQL 关系型数据库
【巡检问题分析与最佳实践】PolarDB 死锁问题
死锁是关系型数据库系统中最为常见的错误,出现在不同事务中同时对某些数据访问加锁时都要等待对方请求中的数据而无法获取锁,数据库系统会自动牺牲回滚代价最小的事务,从而导致对应的写请求失败,更严重的情况是在大量死锁发生时,会导致数据库系统效率低下,堆积进程大量堆积引发性能问题。
【巡检问题分析与最佳实践】PolarDB 死锁问题

热门文章

最新文章