Синхронизация базы данных MySQL для разработки / тестирования рабочей станции - PullRequest
1 голос
/ 06 августа 2010

Мне нужна локальная копия нашей производственной базы данных, и мне нужно обновлять ее каждые несколько дней, чтобы тестирование и разработка не работали с ужасно устаревшими данными.Несколько дней в порядке.Вот псевдо-план:

  1. Напишите на производственном сервере скрипт, который mysqldump + gzip базы данных.
  2. Добавьте процесс cron для запуска скрипта через день в непиковый периодч.
  3. Напишите сценарий на рабочей станции, которая rsync выполняет распаковку дампа и загружает его.

Есть ли лучший, более чистый или безопасный способ сделать это?

РЕДАКТИРОВАТЬ: Просто чтобы добавить ясности.Мы по-прежнему располагаем известными тестовыми данными вместе с нашей тестовой библиотекой (разработка через тестирование).Как только эти тесты пройдут, переходят к (более) реальным вещам.

Ответы [ 2 ]

1 голос
/ 06 августа 2010

Вы можете рассмотреть репликацию MySQL.Это не та вещь, с которой нужно шутить, но может быть то, что вы ищете.Больше информации здесь ... http://dev.mysql.com/doc/refman/5.0/en/replication-features.html (лично я ничего не знаю об этом, кроме того, что это можно сделать).

0 голосов
/ 06 августа 2010

Тестирование должно работать с «известными» данными; не производственные данные. Для этого у вас должны быть скрипты для загрузки «тестовых» данных в систему. Test / Dev не должен иметь дело с движущейся целью данных. Кроме того, если у вас есть какие-либо конфиденциальные данные в рабочей среде (не у всех), ваши команды разработчиков и тестировщиков не должны иметь к ним доступа.

Некоторые предложения по созданию тестовых данных: 1) Электронные таблицы Excel с VBA за ними для создания sql для работы с БД 2) Необработанные сценарии SQL 3) Программы создания данных, которые генерируют данные по известному шаблону.

...