mysql57开启biglog并查看biglog保姆级教程

news/2024/6/17 6:03:17 标签: binlog, mysql biglog

目录

详细步骤

1.修改mysql配置文件

2.重启mysql

3.操作数据库

4.查看binglog

4.1mysqlbinlog示例:

4.2mysqlbinlog将biglog写入文件示例:

4.2.1biglog中创建表示例:

4.2.2插入示例

4.2.3更新示例


详细步骤

1.修改mysql配置文件

vi /etc/my.cnf

[mysqld]下增加如下配置


log-bin=mysql-bin
server-id=1

说明:log-bin指定了binlog的前缀名,server-id必须唯一且不同于其他MySQL服务器

2.重启mysql

centos重启示例

systemctl restart mysqld

3.操作数据库

往数据库中的某个表新增一条记录或者创建表都会往biglog文件中写入内容

4.查看binglog

cd /var/lib/mysql/mysql-bin
ll -la

可以看到会有类似mysql-bin.000001的文件生成

drwxr-x--x.  6 mysql mysql     4096 3月  13 22:44 .
drwxr-xr-x. 27 root  root      4096 8月  29 2023 ..
-rw-r-----.  1 mysql mysql       56 8月  29 2023 auto.cnf
-rw-------.  1 mysql mysql     1680 8月  29 2023 ca-key.pem
-rw-r--r--.  1 mysql mysql     1112 8月  29 2023 ca.pem
-rw-r--r--.  1 mysql mysql     1112 8月  29 2023 client-cert.pem
-rw-------.  1 mysql mysql     1680 8月  29 2023 client-key.pem
-rw-r-----.  1 mysql mysql      283 3月  13 22:40 ib_buffer_pool
-rw-r-----.  1 mysql mysql 12582912 3月  13 22:42 ibdata1
-rw-r-----.  1 mysql mysql 50331648 3月  13 22:42 ib_logfile0
-rw-r-----.  1 mysql mysql 50331648 8月  29 2023 ib_logfile1
-rw-r-----.  1 mysql mysql 12582912 3月  13 22:42 ibtmp1
drwxr-x---.  2 mysql mysql     4096 8月  29 2023 mysql
-rw-r-----.  1 mysql mysql      962 3月  13 22:42 mysql-bin.000001
-rw-r-----.  1 mysql mysql       19 3月  13 22:40 mysql-bin.index
srwxrwxrwx.  1 mysql mysql        0 3月  13 22:40 mysql.sock
-rw-------.  1 mysql mysql        5 3月  13 22:40 mysql.sock.lock
drwxr-x---.  2 mysql mysql     8192 8月  29 2023 performance_schema
-rw-------.  1 mysql mysql     1680 8月  29 2023 private_key.pem
-rw-r--r--.  1 mysql mysql      452 8月  29 2023 public_key.pem
-rw-r--r--.  1 mysql mysql     1112 8月  29 2023 server-cert.pem
-rw-------.  1 mysql mysql     1680 8月  29 2023 server-key.pem
drwxr-x---.  2 mysql mysql     8192 8月  29 2023 sys
drwxr-x---.  2 mysql mysql       58 3月  13 22:41 test

直接查看binlog可以看到有很多乱码

正确查看方式是使用命令查看

4.1mysqlbinlog示例:

mysqlbinlog -v /var/lib/mysql/mysql-bin.000001

也可以把内容写入到文件中

4.2mysqlbinlog将biglog写入文件示例:

 mysqlbinlog -v /var/lib/mysql/mysql-bin.000001 > /opt/mysql-bin-000001.txt

示例中将binlog写入了文件 /opt/mysql-bin-000001.txt中

此时,查看文件/opt/mysql-bin-000001.txt就没有乱码了,但是和执行sql还是有差异的

4.2.1biglog中创建表示例:
#240313 22:41:55 server id 1  end_log_pos 667 CRC32 0x5b0f29d8  Query   thread_id=3     exec_time=0     error_code=0
use `test`/*!*/;
SET TIMESTAMP=1710340915/*!*/;
CREATE TABLE `test`.`t_table`  (^M
  `id` int(0) NOT NULL,^M
  `name` varchar(255) NULL,^M
  `address` varchar(255) NULL,^M
  `create_time` datetime(0) NULL,^M
  `update_time` datetime(0) NULL,^M
  PRIMARY KEY (`id`)^M
)

说明,第一行是时间戳,240313表示2024年3月13日

22:41:55表示具体时间

下面是创建表语句

4.2.2插入示例
#240313 22:42:19 server id 1  end_log_pos 931 CRC32 0x038eed84  Write_rows: table id 101 flags: STMT_END_F

BINLOG '
S7vxZRMBAAAAPAAAAGADAAAAAGUAAAAAAAEABHRlc3QAB3RfdGFibGUABQMPDxISBv8A/wAAAB7D
vV1G
S7vxZR4BAAAAQwAAAKMDAAAAAGUAAAAAAAEAAgAF/+ABAAAACHpoYW5nc2FuB2JlaWppbmeZsttq
jpmy22qRhO2OAw==
'/*!*/;
### INSERT INTO `test`.`t_table`
### SET
###   @1=1
###   @2='zhangsan'
###   @3='beijing'
###   @4='2024-03-13 22:42:14'
###   @5='2024-03-13 22:42:17'
# at 931
#240313 22:42:19 server id 1  end_log_pos 962 CRC32 0xb2c0a6e7  Xid = 62
COMMIT/*!*/;

4.2.3更新示例
#240313 23:04:34 server id 1  end_log_pos 1558 CRC32 0xfbe11994         Update_rows: table id 102 flags: STMT_END_F

BINLOG '
gsDxZRMBAAAAPAAAAKUFAAAAAGYAAAAAAAEABHRlc3QAB3RfdGFibGUABQMPDxISBv8A/wAAAB6l
yfEH
gsDxZR8BAAAAcQAAABYGAAAAAGYAAAAAAAEAAgAF///gAQAAAAh6aGFuZ3NhbgdiZWlqaW5nmbLb
ao6ZsttqkeABAAAADHpoYW5nc2FuLTg4OBBiZWlqaW5nLWNoYW95YW5nmbLbao6ZsttxIpQZ4fs=
'/*!*/;
### UPDATE `test`.`t_table`
### WHERE
###   @1=1
###   @2='zhangsan'
###   @3='beijing'
###   @4='2024-03-13 22:42:14'
###   @5='2024-03-13 22:42:17'
### SET
###   @1=1
###   @2='zhangsan-888'
###   @3='beijing-chaoyang'
###   @4='2024-03-13 22:42:14'
###   @5='2024-03-13 23:04:34'

 

特别说明:where与set之间都是原始值,set后面都是更新后的值


http://www.niftyadmin.cn/n/5426408.html

相关文章

深度学习——SAM(Segment-Anything)代码详解

目录 引言代码目录segment-anything 代码详解build_sam.pypredictor.pyautomatic_mask_generator.py 引言 从去年年初至今,SAM(Segment Anything )已经问世快一年了,SAM凭借其强大而突出的泛化性能在各项任务上取得了优异的表现,广大的研究者…

Python的基础操作

介绍 Python是一种简单易学且功能强大的编程语言,广泛应用于数据科学、Web开发、人工智能等领域。本文将介绍Python的一些基础操作, 帮助初学者快速入门。 数据类型 Python支持多种数据类型,包括整数、浮点数、字符串、列表、元组、字典等…

老的项目eclipse内存不够

-Xms256m -Xmx512m -XX:MaxNewSize256m -XX:MaxPermSize256m

打卡学习kubernetes——kubernetes架构原理

接上一篇的内容,除了核心组件,还有一些推荐的Add-ons: kube-dns 负责为整个集群提供DNS服务Ingress Controller 为服务提供外网入口Heapster 提供资源监控(没用过这个,但是用过grafana,很方便&#xf…

项目示例 - 3.服务网关 - 3.Gateway

项目示例 - 3.服务网关 - 3.Gateway 关联知识&#xff1a; 分布式微服务 - 3.服务网关 - 4.Gateway 内容提要&#xff1a; 基本使用自定义断言自定义局部、全局过滤器 基本使用 建Module&#xff1a;微服务起名为gateway-server改pom&#xff1a;引入以下依赖 <depend…

不同数据库中sql如何添加数据

在 SQL 中向数据库表中添加数据&#xff0c;通常使用 INSERT 语句。下面是各种主流数据库的代码案例&#xff0c;演示如何向表中添加数据&#xff1a; MySQL -- 向表中添加一行数据 INSERT INTO table_name (column1, column2, column3) VALUES (value1, value2, value3);Pos…

mac启动skywalking报错

这个命令显示已经成功 但是日志报错了以上内容。 然后去修改。vim .bash_profile 查看全局变量&#xff0c;这个jdk却是有2个。所以这个问题没解决。

常用类和枚举入门-----

day 13 一、枚举 理解&#xff1a; 实现&#xff1a;1. 不需要提高Set方法&#xff0c;因为枚举对象通常为只读 2.对枚举对象、属性使用final static 共同修饰&#xff0c;实现底层优化。 3.枚举对象名通常使用全部大写&#xff0c;常量的命名规范。 4.枚举根据对象需要&…