2010-06-10 138 views
7

我現在有一個大的生產數據庫(7GB +),我需要測試我的開發分支的大部分數據都需要更新。保持本地MySQL數據庫與活動數據庫同步(MySQL複製?)

我想創建一個本地數據庫,這樣我就可以實現一個CI服務器,並將開發數據庫與生產數據庫分開,但是如果使用此數據庫,我該如何確保它始終保持同步?

我想過複製,但是如果連接到我的本地服務器或者我已經更改了數據庫結構,這將如何影響複製?

感謝,

加文

+0

考慮到您可能在開發之前很久纔開始對錶進行開發,您將如何保持開發數據庫與生產同步? – 2010-06-10 11:52:10

+0

是的,這是問題的一部分,我不知道它甚至可能做到這一點,因爲架構可能會發生很大的變化...... – Gcoop 2010-06-10 11:57:22

回答

4

考慮到您可能在開發之前很久纔開始進行表格更改,您如何計劃將開發數據庫與生產保持同步?

是啊,這是問題的一部分,我 不知道它甚至有可能做到 給定的模式可以改變 頗有幾分..

這將是非常困難的有任何自動同步不會消除你的或導致發展變化的問題。

因此,我建議您僅在需要時手動恢復生產備份。建立一份工作來完成工作,並根據需要運行它(不要按計劃進行)。儘可能使用當前數據進行必要的開發。當你需要刷新時,確保你已經實現了/保存到文件中的所有開發變更,然後將備份恢復到開發。如果您製作了「發行版」,那麼在此之後進行恢復。您需要確定最佳效果。但是,只要確保在恢復時不會失去任何發展變化!

如果您需要擁有最新的支持和調試生產問題的本地版本,請設置「支持」數據庫並使用複製。不要在那裏開發工作,有專門的開發數據庫。

0

考慮使用導出整個數據庫的SQL語句(架構和實際數據)的形式爲文本文件,然後把它們在某些版本控制系統,該系統將跟蹤更改。

+0

可以;真的把它當作一個連續的解決方案,雖然...... – Gcoop 2010-06-10 11:55:43