我們有一個生產數據庫,其中包含文本顯示在我們的網站上。 我們也有多個分支的開發服務器(生產數據庫的幾個副本)。在生產和開發之間保持文本同步的步驟
我們遇到的問題是在開發過程中,我們在每個分支中添加和更改文本。而且我們還在生產環境中更改文字。
如果開發和生產改變了相同的文本,很難找到我們如何合併這些更改。
我們在考慮只能對生產數據庫進行更改,並且只能在開發數據庫中添加文本。但是,這會給我們帶來許多具有幾乎相同數據的不同密鑰的文本。
如何處理環境之間的文本更改?
謝謝!
我們有一個生產數據庫,其中包含文本顯示在我們的網站上。 我們也有多個分支的開發服務器(生產數據庫的幾個副本)。在生產和開發之間保持文本同步的步驟
我們遇到的問題是在開發過程中,我們在每個分支中添加和更改文本。而且我們還在生產環境中更改文字。
如果開發和生產改變了相同的文本,很難找到我們如何合併這些更改。
我們在考慮只能對生產數據庫進行更改,並且只能在開發數據庫中添加文本。但是,這會給我們帶來許多具有幾乎相同數據的不同密鑰的文本。
如何處理環境之間的文本更改?
謝謝!
這是一個相當普遍的問題 - Martin Fowler前段時間寫過這個問題(http://martinfowler.com/articles/evodb.html)。 有沒有好的,簡單,無痛的解決方案 - 但http://www.amazon.com/Recipes-Continuous-Database-Integration-ebook/dp/B000RH0EI4可能的話題....
這是一個相當大創舉的最好的書,需要從你的開發團隊很多學科的 - 但它是值得的,如果你遇到了你描述的問題。
它歸結爲腳本化數據庫創建/修改任務,並將這些腳本提交到源代碼控制。您使用命名約定來確定運行腳本的順序,然後使用自動化進程在設置環境或將新版本部署到該環境時運行它們。
我們還沒有找到一個很好的解決方案,但我明白這個的複雜性,並會接受你的答案。 – Patrik 2012-08-21 07:13:31