170 похожих чатов

Коллеги, подскажите Есть репликация Мастер1-Мастер2 Мастер2 постоянно пишет в таблицу my_table, соответственно

данные реплицируются в Мастер1
сейчас мне надо добавить столбец

ALTER TABLE my_table
ADD col INT

могу ли я это выполнить на Мастер1? (потом это уйдёт в Мастер2)

тут
https://dev.mysql.com/doc/refman/8.0/en/replication-features-differing-tables.html
вроде расписано, но непонятно как поведёт себя система в ситуации Мастер-Мастер

2 ответов

28 просмотров

я делал не совсем такую, но похожую операцию на простом мастер-мастер, через отключение бинлога, на каждом инстансе, альтеринге каждого инстанса в отдельности, с временной остановкой репликации. если приложение не будет пытаться прочитать/записать новый столбец, по идее развалиться не должно, но я рекомендую экспериментировать только в тестовом окружении

Alexandr- Автор вопроса
Ale><ander
я делал не совсем такую, но похожую операцию на пр...

настроил локально в докере второй реплицируемый мастер - приостановил репликацию - на основном мастере сделал ALTER - на второй машинке, поизменял данные (т.е. в бинлоге старый формат таблицы) - включил репликацию на второй машине, появился столбец - включил на основной, появились данные всё прошло замечательно, спасибо всем кто участвовал в обсуждении

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта