本文作者:kris

教你自动恢复MySQL数据库的日志文件(binlog)-mysql 日志恢复数据

kris 2025-01-23 10:45:30 1
教你自动恢复MySQL数据库的日志文件(binlog)-mysql 日志恢复数据摘要: mysqlbinlog解析binlog?你进入mysql /bin目录下你可以看到有一个mysqlbinlog可执行文件,只要 在命令下 ~ mysqlbinlog binlog文...

mysqlbinlog解析binlog?

你进入mysql /bin目录下你可以看到有一个mysqlbinlog可执行文件,只要 在命令下 ~ mysqlbinlog binlog文件 就可以查看咯,一般做增量备份

mysqlbinlog中的为什么会有rollback?

/var/lib/mysql/mysqlbin.000001.log | mysql -uroot -p密码 tong --用二进制日志文件恢复tong数据库到11点7分52秒之前,rollback是回滚的意思

MySQL binlog三种模式区别?

MySQL的binlog(二进制日志)记录了对数据库执行的所有更改,主要用于主从复制和数据恢复。binlog有三种模式:Statement-Based Logging (SBL),Row-Based Logging (RBL) 和 Mixing-Based Logging (MBL)。以下是这三种模式的详细解释和它们之间的主要区别:
Statement-Based Logging (SBL)
工作原理: 记录的是SQL语句本身。
优点: 记录量较小,对I/O的影响较小。
缺点: 由于记录的是SQL语句,当SQL语句执行涉及到随机读取文件、未知的列值等时,可能会出现主从不同步的问题。
Row-Based Logging (RBL)
工作原理: 记录的是更改的数据行。
优点: 主从同步更可靠,不会因为某些SQL语句的执行而导致不同步。
缺点: 记录量较大,对I/O的影响较大。
Mixing-Based Logging (MBL)
工作原理: 结合了SBL和RBL的特点。对于已知的、简单的SQL语句,使用SBL;对于复杂的、可能导致数据不一致的SQL语句,使用RBL。
优点: 在可靠性和性能之间提供了一个折中的方案。
缺点: 需要更多的逻辑来判断何时使用SBL,何时使用RBL。
总结:
SBL适合于I/O资源有限但可以接受数据不一致风险的的环境。
RBL适合于需要高数据一致性的环境,如金融等关键业务。
MBL适合于需要在性能和数据一致性之间找到平衡的环境。
在选择binlog模式时,需要根据实际的应用需求和环境资源来决定。

MySQL 的 Binlog 有三种模式,分别是:STATEMENT、ROW、MIXED。它们的区别如下:

教你自动恢复MySQL数据库的日志文件(binlog)-mysql 日志恢复数据

图片来源:网络

1. STATEMENT 模式:每一条 SQL 语句会被记录在 Binlog 中。

2. ROW 模式: Binlog 中会记录每一行数据的变化。

3. MIXED 模式:是 STATEMENT 和 ROW 的混合模式,对于某些语句使用 STATEMENT 模式,对于某些语句使用 ROW 模式。

这三种模式的区别,主要影响了 Binlog 的大小和对主从复制的性能影响。

如果使用 STATEMENT 模式,Binlog 中只记录 SQL 语句,因此 Binlog 文件相对较小,但是对于复杂的语句,可能会产生很多的 SQL 语句,导致 Binlog 文件很大。

如果使用 ROW 模式,Binlog 中会记录每一行数据的变化,因此 Binlog 文件相对较大,但是对于复杂的语句,产生的 Binlog 语句相对较少。

如果使用 MIXED 模式,则会根据语句的具体情况,选择使用 STATEMENT 模式或 ROW 模式。

在实际应用中,如果需要更高的数据安全性,可以使用 ROW 模式;如果需要更快的主从复制性能,可以使用 STATEMENT 模式。MIXED 模式则是一种折中的方案。

文章版权及转载声明

作者:kris本文地址:https://www.damoyx.com/p/26435.html发布于 2025-01-23 10:45:30
文章转载或复制请以超链接形式并注明出处大漠游侠网

阅读
分享