Spec-Zone .ru
спецификации, руководства, описания, API

16.4.1.25. Репликация и Зарезервированные слова

Можно встретиться с проблемами, когда Вы пытаетесь тиражироваться от ведущего устройства старшего возраста к более новому ведомому устройству, и Вы используете идентификаторы на ведущем устройстве, которые являются зарезервированными словами в более новой версии MySQL, работающей на ведомом устройстве. Пример этого использует названный столбец таблицы current_user на 4.0 ведущих устройствах, которые тиражируются к 4.1 или более высокому ведомому устройству потому что CURRENT_USER зарезервированное слово, начинающееся в MySQL 4.1. Репликация может перестать работать в таких случаях с Ошибкой 1064, у Вас есть ошибка в Вашем синтаксисе SQL..., даже если база данных или таблица назвали использование зарезервированного слова, или таблица, называя столбец, используя зарезервированное слово исключается из репликации. Это - то, вследствие того, что каждое событие SQL должно быть проанализировано ведомым устройством до выполнения, так, чтобы ведомое устройство знало, на какой объект базы данных или объекты влияли бы; только после того, как событие анализируется, может ведомое устройство применять любые правила фильтрации, определенные --replicate-do-db, --replicate-do-table, --replicate-ignore-db, и --replicate-ignore-table.

Чтобы работать вокруг проблемы базы данных, таблица, или имена столбцов на ведущем устройстве, которое было бы расценено как зарезервированные слова ведомым устройством, делает одно из следующего:

Для списков зарезервированных слов версией MySQL см. Зарезервированные слова в MySQL Server Version Reference. Для правил заключения в кавычки идентификатора см. Раздел 9.2, "Имена объектов Схемы".