Вот наши настройки MySQL:
3 сервера MySQL в «кольце репликации»: все они являются ведущими, а S1 является подчиненным для S2, который является подчиненным для S3, который является подчиненным для S4.
До сих пор мы делали снимки машин, но это больше не то, что мы можем / хотим делать. Мы пытаемся получить полную резервную копию баз данных на S3.
Моя идея заключалась в том, что нам нужно сделать mysqldump
каждые несколько часов, а затем загружать его в S3. Проблема в том, что дамп довольно дорого обходится, если у вас более нескольких сотен МБ данных (у нас 8 ГБ).
Можно сохранить двоичные журналы, но тогда восстановление может занять несколько дней, так как нам нужно применить все двоичные журналы: /
Какое-нибудь отличное решение для нас?
Вы действительно можете использовать для этого репликацию. На ум приходят два варианта.
Не знаю, круто ли это, но мы вполне довольны CDP от R1Soft для MySQL. Вы можете взглянуть на это: http://wiki.r1soft.com/pages/viewpage.action?pageId=4460570
Он создаст резервные копии в любой локальный каталог / точку монтирования. Итак, используя Субоблако или s3fs вы можете напрямую делать резервную копию на S3.
А как насчет репликации MySQL? http://dev.mysql.com/doc/refman/5.0/en/replication.html
Какой механизм хранения использует ваше приложение?
Если это InnoDB, вы можете использовать xtrabackup для полного резервного копирования каждый день и инкрементного резервного копирования каждые несколько часов.