1

我想设置一个新的 mysql 数据库从站,运行比主站更新版本的 mysql => 5.1.41 => 5.0.75,据我所知,这通常应该没问题。然而,事实证明设置复制失败,因为我在 5.0.75 中使用了一条 SQL 语句,显然在 5.1.41 中不再适用:

导致问题的语句如下所示:

DELETE FROM tab1 t1
USING       tab1 t1, tab2 t2
WHERE       t2.field1 = ...
AND         t2.field2 = ...
AND         t1.field1 = t2.field2;

此语句在 5.0.75 上完美运行,在 5.1.41 上,我在从属状态中收到以下错误消息:

...
Last_SQL_Errno: 1064
Last_SQL_Error: Error 'You have an error in your SQL syntax; check the manual that      
                corresponds to your MySQL server version for the right syntax to 
                use near 't1
                USING       tab1 t1, tab2 t2
                ...
...

任何想法,发生了什么,该怎么做?

谢谢!

更新

好的,我自己通过在奴隶上编译 5.0.75 解决了这个问题......但是,我仍然会对发生的事情以及如何处理这些问题感兴趣。谢谢。

4

1 回答 1

-1

对于这样的错误(不重要),您可以在 my.ini 文件中过滤掉。

# skip replication errors
slave-skip-errors=1062,1136,1146

或者修改有问题的代码,使其对版本友好。

于 2011-02-16T17:34:47.707 回答