Назад | Перейти на главную страницу

Импортировать базу данных MySQL 5.6 в 5.5 с помощью клиентских инструментов MySQL 5.6

Моя локальная среда разработки в настоящее время использует MySQL Server 5.5. Однако один из моих клиентских хостов решил обновить свой сервер до версии 5.6. Я синхронизирую базы данных моих клиентов удаленно, используя mysqldump через ssh. У меня есть другие клиенты, использующие сервер MySQL 5.5.

Базы данных, которые я синхронизирую, не используют каких-либо конкретных функций 5.6 (все WordPress полностью совместимы с 5.5). Чтобы работать с обеими моими клиентскими группами на 5.5 и 5.6, можно ли обновить мою локальную среду разработки до MySQL 5.6, а затем синхронизировать базы данных 5.5 с помощью клиентских инструментов 5.6?

К вашему сведению: невозможно синхронизировать базу данных 5.6 с помощью моих клиентских инструментов 5.5, поскольку я получаю следующую ошибку при попытке сделать это:

 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.

Это ошибка из-за изменения в MySQL Server 5.6: ключевое слово unsupport SET OPTION который используется в mysqldump в MySQL 5.5.

Вы можете посмотреть этот билет для получения дополнительной информации: https://bugs.mysql.com/bug.php?id=67507

Чтобы решить эту проблему, я думаю, вы можете сделать одно из следующих решений:

  1. Обновите mysqlclient (mysqldump) до 5.6
  2. Ручной способ: отредактируйте файл mysqldump на клиенте (используя Mysql 5.5)

cp / usr / bin / mysqldump / корень / mysqldump

vim -b / корень / mysqldump

Ищем SET OPTION (используйте команду '/')

Прокомментируйте (или удалите) эти команды / строки

Сохраните файл

вместо этого используйте / root / mysqdump

Надеюсь, что это работает для вас