Должна ли таблица быть одинаково между главной и подчиненной базами данных при репликации с использованием Tungsten (оба экземпляра MySQL)
Я хотел бы получить ответ на этот вопрос, руководствуясь нашими действиями:
Есть ли у нас фундаментальное правило, что подчиненные базы данных должны быть одинаково с главной базой данных как по количеству столбцов, так и по порядку?
Мы используем вольфрамовые репликаторы, соединяющие базу данных master и slave. Но в последнее время у нас есть специальное требование, что мы рассматриваем добавление еще одного столбца только к ведомой базе данных (в 1-й позиции). Таким образом, мы получили бы другую структуру таблицы в ведомой БД по сравнению с главной БД в той же таблице.
Мы хотели бы знать, является ли это работоспособным решением. Спасибо мартин
1 ответ
Да, должно быть так же. Репликация Master и Slave выполняется путем пересылки запросов. Если какие-либо запросы вставки, обновления, удаления (DML) выполняются на главном сервере базы данных, мастер перенаправляет этот запрос на подчиненный сервер. Если ведомое устройство не имеет одинаковую схему (имя таблицы, имя столбца), это приводит к аварийному завершению запрошенного запроса от главного устройства и, в конечном счете, к аварийному завершению репликации. Если вы хотите изменить имя таблицы на ведомом устройстве, просто чтобы выбрать данные, вы можете использовать представления. Надеюсь это поможет.