2011-02-07 3 views
1

Я работаю с небольшой веб-командой, которая в настоящее время находится в процессе интеграции GIT в наш процесс разработки. Мы разрабатываем локально, располагаем центральным открытым хранилищем, а затем переносим изменения на отдельные тестовые и производственные серверы. Это отлично работает для наших файлов, но мы сталкиваемся с препятствиями, когда дело доходит до синхронизации баз данных MySQL.Контроль версий MySQL для дополнения GIT?

У нас есть много сайтов, построенных с Wordpress и вопросы более заметным здесь:

  1. Wordpress вставляет доменное имя в БД. Прямо сейчас мы обойдем это, выполнив поиск и замену всякий раз, когда мы перемещаем сайты с локальных, на тестирование, а затем на производство. Было бы неплохо, если бы нам не пришлось это делать.
  2. БД сервера производственного сервера постоянно меняются (комментарии и т. Д.), А сервер тестирования и наши локальные серверы не синхронизированы. Это затрудняет отправку изменений (после добавления плагина, страницы и т. Д.) В производственную БД с тестового сервера.

Было бы здорово, если бы мы смогли найти что-то, что могло бы интегрироваться с GIT (возможно, через githooks), что позволило бы нам синхронизировать базы данных на разных серверах разработки и производства. Более того, это был бы бонус, если бы был способ отслеживать изменения внутри самой базы данных, что позволяло нам объединять изменения (изменения разработки и изменения производства) при нажатии на производство.

И, наконец, было бы еще лучше, если бы все это работало через несколько доменов (локальное, тестирование и производство); другими словами, он должен был бы найти и заменить URL-адреса в sql для каждого нажатия/вытягивания.

Благодарим вас за понимание.

+0

Вы нашли решение? –

ответ

1

Возможно, вы захотите зарегистрироваться http://www.liquibase.org/. Это инструмент рефакторинга базы данных, созданный для создания и изменения схемы базы данных, создания откатов и кода для генерации SQL. Я познакомился с ним долгое время и не могу хорошо это запомнить, но, похоже, он создан для того, что вам нужно, и из того, что я помню, он пинает задницу.

Смежные вопросы