寻找 SET OPTION(使用‘/’命令)

寻找 SET OPTION(使用‘/’命令)

我的本地开发环境目前使用 MySQL Server 5.5。但是,我的一个客户主机决定将其服务器升级到 5.6。我使用 mysqldump 通过 ssh 远程同步我的客户数据库。我还有其他客户使用 MySQL Server 5.5。

我正在同步的数据库不使用任何特定的 5.6 功能(所有 WordPress 都与 5.5 完全兼容)。为了与 5.5 和 5.6 上的两个客户组一起工作,是否可以将我的本地开发环境升级到 MySQL 5.6,然后使用 5.6 客户端工具同步 5.5 数据库?

仅供参考:无法使用我的 5.5 客户端工具同步 5.6 数据库,因为在尝试这样做时我收到以下错误:

 mysqldump: Couldn't execute 'SET OPTION SQL_QUOTE_SHOW_CREATE=1': 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 'OPTION SQL_QUOTE_SHOW_CREATE=1' at line 1 (1064) (Wordmove::ShellCommandError)

需要澄清一些附加信息。我知道 5.6 中引入了一些与 5.5 不兼容的表方案功能。但是,这些功能是否会在升级时自动应用于 5.5 表,或者将 5.5 数据库导入 5.6 数据库是否基本上仍然与 5.5 完全兼容,直到 5.6 中的新功能在其上被积极使用。

答案1

这是由于 MySQL Server 5.6 中的变化而导致的错误:SET OPTIONMySQL 5.5 上的 mysqldump 中使用了 unsupport 关键字。

您可以查看此票以了解更多信息:https://bugs.mysql.com/bug.php?id=67507

为了解决这个问题,我认为你可以采取以下解决方案之一:

  1. 将 mysqlclient (mysqldump) 升级到 5.6
  2. 手动方式:在客户端编辑文件 mysqldump(使用 Mysql 5.5)

cp /usr/bin/mysqldump /root/mysqldump

vim -b /root/mysqldump

寻找 SET OPTION(使用‘/’命令)

注释(或删除)此命令/行

保存文件

改用 /root/mysqdump

希望这对你有用

相关内容