Иногда, если база данных повреждена, реплицируемая база данных также может реплицировать это повреждение.
Каков наилучший способ репликации / резервного копирования базы данных и предотвращения подобных ситуаций?
(специально для MySQL)
Это подробно описывает все, что вы хотите: http://dev.mysql.com/doc/refman/5.1/en/backup-methods.html
По сути, вам, вероятно, понадобится подчиненное устройство, на котором вы можете делать ежедневные и / или еженедельные полные резервные копии, а затем делать инкрементные резервные копии, сохраняя двоичные журналы с момента полного резервного копирования. Вы можете повторно воспроизвести двоичные журналы для любой команды, какой захотите.
Если «повреждение» находится на уровне, на котором оно будет реплицировано, то единственное решение - частое резервное копирование и хорошее средство обнаружения такого повреждения, чтобы вы могли быстро восстановить его. Вам нужно будет определить, как обнаруживать повреждение в зависимости от вашего конкретного приложения, потому что с точки зрения базы данных все так, как должно быть.
и чтобы добавить дополнительную информацию о том, что сказал opsguy, есть несколько скриптов, известных как воспроизведение двоичных журналов, поэтому вы можете проверить документацию maatkit: http://www.maatkit.org/