Estou atrasado para a festa em relação a essa pergunta, mas vou postar de qualquer maneira, pois essa é uma pergunta comum com poucas respostas. Eu tive grande sucesso usando Phing e Liquibase juntos, você pode usar o Liquibase para avançar e retroceder as alterações do banco de dados de uma maneira altamente formalizada e pode até rastrear suas alterações no controle de versão.
Já apresentei este tópico várias vezes e postei meus slides (formato HTML) no GitHub:https://github.com/wjgilmore/Automating-Deployments-with-Phing--Capistrano-and-Liquibase
Inclui material bônus para implantação de sites PHP usando Capistrano. :-)