Что произойдет, если вы остановите подчиненный сервер mysql на несколько часов (8 часов)? Может ли мастер регистрировать все изменения, которые он сделал за последние 8 часов, и можно ли просто снова запустить подчиненный сервер и просто подождать, пока он догонит мастер?
Можно ли остановить подчиненный сервер mysql на несколько часов?
Ответы (1)
Пока у вас есть место для файлов журнала, вы можете останавливать его, пока хотите. В крайних случаях, если объем ваших изменений данных достаточно велик, ваше ведомое устройство не сможет справиться с этим. Но если это происходит, вам нужно использовать другое оборудование или по-разному балансировать нагрузку на базу данных.
person
Jeremy Gurr
schedule
13.12.2016
Чтобы добавить немного к этому, после того, как вы выдадите
STOP SLAVE;
, вы можете выдать SHOW SLAVE STATUS\G
и проверить поле Relay_Master_Log_File
. Это бинлог от мастера, из которого, в частности, выполняется это подчиненное устройство (Exec_Master_Log_Pos
- позиция в этом файле, которая была выполнена последней). Если вы сможете избежать этого бинлога и в дальнейшем, вы будете в безопасности после того, как запустите файл SLAVE START;
.
- person Guriandoro; 14.12.2016
Вы можете настроить максимальный размер файла журнала и максимальное количество, если вы еще этого не сделали, поэтому убедитесь, что у вас есть хотя бы такой объем доступного дискового пространства. Подчиненное устройство прекратит чтение от ведущего, если достигнет предела, и возобновит работу, когда будет удален самый старый файл журнала, что произойдет, когда он начнет обработку 3-го самого старого.
- person user207421; 14.12.2016
В mysql также есть настройка, которая очищает двоичные журналы старше X дней, и я не помню, есть ли у нее какие-либо сведения о рабах, не говоря уже о остановленных рабах. Следует также отметить, что ведомые устройства воспроизводят журналы в одном потоке, поэтому для воспроизведения на ведомом устройстве может потребоваться несколько часов загруженной многоядерной активности ведущего устройства.
- person Sammitch; 14.12.2016