Как делать максимально безотказные бэкапы корня сайта и mysql в динамике?
Как делают бэкапы на высоконагруженных системах, когда выключить нельзя, а в бд постоянно что-то пишется, потому что миллиард пользователей заказы делают (условно)?
Дополнительно:
Делают read-only реплику и бэкапят её обычным способом.
Корень сайта непонятно зачем бэкапить, если весь код и так в репозитории.
Mysql по живому можно бэкапить c помощью специальных утилит, таких как Percona XtraBackup
Ответы:
Если вам нужно бекапить сайт - значит вы что то делаете не так.
Ну а БД: mysql > dumpfile.sql чем не устраивает?
- А вы попробуйте так сделать с большой БД на на боевом сайте, а не на уютном домашнем компике
Потом расскажете свои впечатления :) - Ипатьев, так и сделал когда переносил сервер. База правда небольшая, 12 Гб. Сдампил, перенёс, восстановил.
Опишите проблему, и специалист поможет с настройкой, исправлением ошибки или доработкой сайта. Подберём понятный план работ без лишней переписки.
Пока нет других ответов. Будьте первым, кто поможет автору.
Ответить на вопрос
Для создания максимально безотказных бэкапов корня сайта и базы данных MySQL в динамике, рекомендуется использовать комбинацию различных инструментов и методов. Вот несколько шагов, которые могут помочь вам в этом процессе:
1. **Автоматизация**: Важно автоматизировать процесс создания бэкапов, чтобы избежать человеческих ошибок и обеспечить регулярное выполнение задачи. Для этого можно использовать cron job на сервере, который будет запускать скрипт создания бэкапов в определенное время.
2. **Бэкап файлов**: Для создания копии корня сайта, можно использовать утилиты, такие как rsync или tar. Например, для создания архива корня сайта в Linux можно воспользоваться следующей командой:
tar -czvf /путь/к/бэкапу/backup_files_$(date +%Y%m%d).tar.gz /путь/к/корню/сайта
3. **Бэкап базы данных MySQL**: Для создания резервной копии базы данных MySQL, можно воспользоваться командой mysqldump. Например, чтобы создать дамп базы данных с именем "database_name" в файл "backup_db.sql", используйте следующую команду:
mysqldump -u username -p database_name > /путь/к/бэкапу/backup_db_$(date +%Y%m%d).sql
4. **Хранение бэкапов**: Важно хранить бэкапы на отдельном сервере или в облачном хранилище, чтобы защитить данные от потери в случае сбоя сервера. Также рекомендуется создавать несколько копий бэкапов и хранить их в разных местах.
5. **Мониторинг**: Для обеспечения надежности бэкапов, следует регулярно проверять их целостность и восстанавливать данные для проверки работоспособности процесса восстановления.
Соблюдение всех вышеперечисленных рекомендаций поможет вам создать максимально безотказные бэкапы корня сайта и базы данных MySQL в динамике.