Ну про SVN/Git уже написали. Еще бы хорошо систему трекинга задач/ошибок подключить (TRAC, Bugzilla и т.п., бесплатных решений хватает, интегрирующихся с системами контроля версий), очень удобно потом искать/отслеживать историю изменений.
А про новую версию скриптов и бд — помог бы тестовый сервер, на котором бы миграция могла тестироваться, плюс автоматический backup-restore всего сайта (скрипты + бд). Тогда тест мог бы быть чем-то вроде:
— бекап «живой» системы
— разворачивание бекапа на тестовом сервере
— запуск скриптов миграции на тестовом сервере
— проверка результата