基于 MySQL 语句的复制 : Does binlog contain exact queries executed on master?

标签 mysql sql replication binlog

我们不得不为几天前发生的事件调试我们的 Web 应用程序,而我们所拥有的只是 MySQL 复制二进制日志(语句复制)。我们能否将这些查询视为与我们的 Web 应用程序在 master 上执行的完全相同的 SQL 查询?

我们的应用程序对一个表中的单行进行大量更新,但这些总是像 UPDATE y SET x = x + 1 ...x = x - 这样的查询2,从来没有UPDATE y SET x = 23 ...,在binlog中我们发现了很多x = 23类型的更新。难道那些严格分配的UPDATE查询实际上是由复制机制创建的吗?

最佳答案

实际上,应用程序正在执行那些 SET x=23 类型的更新,但在某些条件下。

所以回答我自己的问题:您将在 binlog 中找到的查询与在 master 数据库上执行的查询相同,但您只会在那里找到插入/更新查询(显然没有选择),并且它们的顺序可能不同(你需要查看 binlog 中评论中的时间戳)。

关于基于 MySQL 语句的复制 : Does binlog contain exact queries executed on master?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29888020/

相关文章:

mysql - 首先从两个表中获取具有最新对话(消息)的用户,然后获取其他没有对话的用户

mysql - SQL查询似乎不会影响相同的行数,添加一个count语句

installation - Cassandra 复制系统 - 它是如何工作的

mysql - InnoDB 从站不更新

python - 在 sqlalchemy 中使用多列从另一个表更新一个表

C++ - 我应该接受什么类型的参数? (什么时候投?)

Java 添加额外的传递变量

Sql Server Express 数据库大小限制

sql - 如何在sql中选择不同和连接

node.js - MongoClient.connect - 错误: Could not locate any valid servers in initial seed list