2009-08-25 44 views
0

假設我正在開發使用數據庫的Web應用程序,並且在我的版本控制系統中創建了一個需要重大數據庫更改的分支。數據庫更改和VCS分支

讓我們假設我不能正常使用的行李箱數據庫,因爲我經常對其他部門做的,在這種情況下,我真正需要數據庫的新副本爲我的分支。

現在,假設我有一個要求數據庫的另一個副本,另一個分支。我應該創建兩個額外的數據庫副本嗎?有沒有一種方法可以分支我的數據庫?你們都做什麼?

我正在使用MySQL。我想只使用一個MySQL實例。也許有一個MySQL版本,我可以用DSN做這樣的事情?服務器= myServerAddress;數據庫= MyDatabase的版本= 123; UID =名爲myUsername; PWD = MYPASSWORD;

我知道我可以做出只有前進的改變,但我寧願不要讓舊的桌子和田野不必要地放在周圍。

回答

1

有沒有乾淨的解決方案,我可以想到這樣做。我只需沿着「trunk」數據庫的mysqldump的路線,然後將其加載到「branchA」數據庫中。

就保持數據新鮮而言,如果您需要保留一組CREATE,ALTER等命令以使您從主幹到分支版本,那麼您可以對主幹副本或活數據每次你想要一組新的數據。這樣做並在版本控制下使用此腳本意味着當您準備好將分支合併到主幹並部署時,您在生產中執行此操作非常容易。

你可以走LVM快照路徑,虛擬機快照等來製作數據庫數據或機器的完整副本,但我認爲這可能會過於複雜。