Analyze the difference between the mysql binary log processing transaction and non-transactional statements
During the execution of transactional statements, the server will perform additional processing.When the server is executing, multiple transactions are executed in parallel.In order to record them together, the concept of transaction cache needs to be introduced.When the transaction is completed and committed, it is flushed to the binary log together.For the processing of non-transactional statements.Follow the following 3 rules:
1) If a non-transactional statement is marked as transactional, it will be written to the transaction buffer.
2) If the statement is not marked as transactional and there is no transaction cache, then it is written directly to the binary log.
3) If it is not marked as transactional, but there is in the transaction cache, then write to the transaction buffer.
NoteIf there is a non-transactional statement in a transaction, then rule 2 will be used and the non-transactional statement will be affected first Table statements are written directly to the binary log.