我很好奇,如果有任何解決方案,最好是免費的,可以有一箇中央數據庫以版本方式發佈數據。數據庫的版本控制
例如,
客戶端1決定編輯者輪廓,使得它得到了機器上的本地副本進行更改。當他們對那裏感到滿意時,他們會將結果發佈到中央數據庫。就像你將如何做一個提交。
客戶端2嘗試編輯相同的本地副本,但是當他們去提交時,他們必須解決衝突。
中央數據庫必須存儲數據版本之間的壓縮差異。
在任何時候有人可以查看提交的所有數據版本。
我很好奇,如果有任何解決方案,最好是免費的,可以有一箇中央數據庫以版本方式發佈數據。數據庫的版本控制
例如,
客戶端1決定編輯者輪廓,使得它得到了機器上的本地副本進行更改。當他們對那裏感到滿意時,他們會將結果發佈到中央數據庫。就像你將如何做一個提交。
客戶端2嘗試編輯相同的本地副本,但是當他們去提交時,他們必須解決衝突。
中央數據庫必須存儲數據版本之間的壓縮差異。
在任何時候有人可以查看提交的所有數據版本。
你在使用什麼數據庫服務器?如果您使用MySQL和PHP,Doctrine具有可應用於模型的「可版本化」行爲。
對這種行爲的文檔是在這裏:
http://www.doctrine-project.org/projects/orm/1.2/docs/manual/behaviors/en#core-behaviors:versionable
「的數據庫版本控制」是一個有點曖昧的標題,因爲你正在使用一個數據庫作爲存儲庫「數據存儲」實際上要求一個VCS 。
Subversion有這樣一個模型(Berkeley DB or filesystem-based)。
它也有一個Copy-Modify-Merge model它類似於你所描述的鎖定機制。
alt text http://svnbook.red-bean.com/nightly/en/images/ch02dia4.pngalt text http://svnbook.red-bean.com/nightly/en/images/ch02dia5.png
我覺得OP正在尋找一種方法,把數據庫內容轉換爲VCS,而不是使用一個數據庫作爲一個VCS的存儲機制。換句話說,而不是使用VCS來管理文件的更改,在OP正在尋找一個VCS,他可以用它來管理數據庫更改的記錄。 – 2011-03-17 19:53:23
從展鵬排序提供了一些此功能的SQL工具,但不是在你描述的方式來實現。例如,sql data compare可以比較2個數據庫中的數據之間的差異,也可以使用sql source control。
但是,在本地計算機上獲取數據庫的副本,進行更改並重新提交將更像是手動過程。
如果你考慮數據版本紅門解決方案,單擊「如何到版本控制你的數據」從鏈接: http://www.red-gate.com/products/sql_source_control/evaluation_center/index.htm – 2010-07-03 11:00:06
該產品跟蹤對整個DB架構和數據的更改。您可以在任何時間點標記版本,並使用簡單的命令返回到數據庫的舊狀態。它還允許您創建相同數據庫的虛擬,單獨的副本,以便每個團隊成員可以擁有自己的單獨數據庫。所有虛擬副本都被追蹤到同一個存儲庫中,因此將數據庫還原到其他人的版本非常容易(您只需簽出他們的版本,就像使用源代碼管理一樣)。這意味着您的所有數據庫始終可以同步。
免責聲明 - 我在超出標度工作:-)
這正是我的產品(是的,我有偏見:))DBmaestro團隊一樣。
我鼓勵大家閱讀關於數據庫強制管理解決方案的綜合性,公正的評論,由他在LinkedIn上發佈的資深數據庫專家Ben Taylor編寫。https://www.linkedin.com/pulse/article/20140907002729-287832-solve-database-change-mangement-with-dbmaestro
我們在這裏討論的是什麼樣的用戶界面? – 2010-07-01 08:43:48