Bug #71609 | The default for binlog_format should be changed from "statement" to "mixed" | ||
---|---|---|---|
Submitted: | 6 Feb 2014 16:06 | Modified: | 24 Jan 2018 16:58 |
Reporter: | x xxxx | Email Updates: | |
Status: | Won't fix | Impact on me: | |
Category: | MySQL Server: Errors | Severity: | S3 (Non-critical) |
Version: | 5.5 | OS: | Any |
Assigned to: | CPU Architecture: | Any | |
Tags: | replication |
[6 Feb 2014 16:06]
x xxxx
[6 Feb 2014 17:30]
Sveta Smirnova
Thank you for the report. Binlog-format=STATEMENT is default, because: 1. It is required for backward compatibility with installations, initially created before version 5.1 was released. 2. It still has advantages, such as less traffic for particular operations. But your report is valid and a warning in the error log file does not harm.
[6 Feb 2014 18:38]
x xxxx
Re 1: A slave server must always be at least at the same version as the master server or else replication (esp. statement based) won't work anyways. Using a 5.5 master with a pre-5.1 slave is hardly a valid scenario :) What case do you have in mind that could be broken? Only those where the admin upgrades the master first? Re 2: "mixed" is supposed to switch between "statement" and "row based" on demand. How bad must the MySQL servers judgement be that changing this value globally in the my.cnf leads to better performance? If the admin want's to change it for a single query then that would still be possible by changing the variable per session.
[24 Jan 2018 16:58]
Luis Soares
The default is now ROW since 5.7. Closing.