Я всегда отслеживаю все изменения на двух фронтах:
Я сохраняю пустую версию базы данных и обновляю структуру каждый раз
Я стараюсь писать небольшие сценарии для каждого небольшого изменения.В основном это сценарии DDL (изменение таблицы, добавление столбца и т. Д.), И они всегда хранятся в четко определенной структуре с комментариями, связывающими операторы с задачами из Bugzilla / Jira, независимо от того, что используется.Большую часть времени я проверяю, что эти сценарии безопасны для выполнения несколько раз без ошибок.
Даже если для некоторых задач я не единственный, кто вносит изменения, это не сложночтобы синхронизировать нашу работу, используя svn.
Все должно быть протестировано, по крайней мере, на одной копии производственной среды.
Другим способом было бы использовать некоторые инструменты сравнения базы данных, которые сравнивали бы живоебазы данных для вашей базы данных разработки и генерировать сценарии для внесения изменений.Я думаю, что Navicat имеет эту функцию.Некоторые считают это намного безопаснее, ну, я думаю, что это более хаотично.Если вы хотите хорошо выполненную работу, вы делаете это сами.