【MySQL】binlog三种模式的优缺点

在 MySQL 中,binlog 日志 的模式有三种:statement、row、mixed。
以下是三种模式的介绍和优缺点。

statement 模式

statement 模式记录的是 SQL 语句。
优点:日志量较小,占用空间小。执行速度快,因为只需要记录 SQL 语句即可。
缺点:对于使用了函数或随机数的 SQL 语句,可能会出现不一致的情况,比如随机数每次生成的都不一样。
因此,使用了函数或随机数的场景下,不建议使用 statement 模式。

row 模式

row 模式记录的是数据行的变化情况。
优点:对于使用了函数或随机数的 SQL 语句,不会出现不一致的情况。
缺点:日志量较大,占用空间较大。执行速度较慢,因为需要记录每一条数据的变化情况。

mixed 模式

mixed 模式是 statement 模式和 row 模式的混合模式,它能够根据具体的情况自动选择使用哪种模式。优点:能够根据具体情况自动选择使用最优的模式。
缺点:执行速度较慢,因为需要根据具体情况选择使用不同的模式。

你可能感兴趣的:(mysql)