什么版本的MySQL首先支持基于行的复制?

我正在考虑从基于STATEMENT的MySQL切换到基于ROW的MySQL复制,但是我很难弄清5.1.41-3ubuntu12.10-log服务器/客户端上是否有基于ROW的复制。

看看这里的文档: http : //dev.mysql.com/doc/refman/5.1/en/replication-options-binary-log.html#sysvar_binlog_format

…看起来ROW在5.1.5之前是不可行的。 但前面提到MIXED是一个选项(MIXED意味着ROW可用,我想)。 也许文档只是谈论命令行启动选项?

简而言之,是基于ROW的MySQL复制(5.1.41)?

根据http://dev.mysql.com/doc/refman/5.1/en/replication-formats.html

MySQL中的复制function最初是基于从主机到从机的SQL语句的传播。 这被称为基于语句的复制(通常缩写为SBR),它对应于基于标准语句的二进制日志logging格式。 在MySQL 5.1.4及更早版本中,二进制日志logging和复制专门使用这种格式。

基于行的二进制日志logging在单独的表行中logging更改。 与MySQL复制一起使用时,这被称为基于行的复制(通常缩写为RBR)。 在基于行的复制中,主服务器将事件写入二进制日志,指出单个表行如何更改。

从MySQL 5.1.8开始,服务器可以根据使用混合格式日志logging的事件types实时更改二进制logging格式。

混合格式生效时,默认情况下使用基于语句的日志logging,但在特定情况下会自动切换到基于行的日志logging,如后面所述。 使用混合格式的复制通常被称为基于混合的复制或混合格式的复制。 有关更多信息,请参见第5.2.4.3节“混合二进制logging格式”。

从MySQL 5.1.12到MySQL 5.1.28,混合格式是默认的。 从MySQL 5.1.29开始,基于语句的格式是默认的。

基于这个摘录以及MySQL 5.1.30是MySQL 5.1的第一个GA版本的事实,MySQL 5.1.41必须具有基于行的二进制日志logging以及基于行的复制。