2012-12-28 74 views
1

我需要將開發mysql db與生產同步。 生產數據庫通過用戶點擊和其他通過網絡生成的數據得到更新。 開發數據庫獲取更新處理數據。將mySQL從開發轉移到生產

完成此操作的最佳實踐是什麼?

我發現了一些差異工具(如MySQL的差異),但他們不管理更新的記錄。 我也發現了一些應用解決方案:http://www.isocra.com/2004/10/dumptosql/ ,但我不知道這是一個很好的做法是在這種情況下,我需要每一個我添加新的InnoDB相關的表的時間來重新測試我的代碼。

任何想法?

+0

您是否需要這一次,或者您需要定期進行此操作? – Swapnil

+0

http://superuser.com/questions/90301/sync-two-mysql-databases我認爲這可能是有益的 –

+0

謝謝,我已經看到了他們,一個是主/從以分貝地精確複製(但我不能因爲在生產中我有用戶生成的數據,我沒有在開發中)。另一個解決方案已經在下一個答案中討論過,我只需要了解它是否也管理更新的記錄。 – Daniele

回答

0

看看mysqldump。它可以爲您提供足夠好的服務。

假設你的桌子全都收錄了某種獨特的鍵,你可以做一個轉儲,離開了「滴/創建表」位。讓它以「插入忽略」的方式運行,您將獲得新數據而不影響現有數據。

另一種選擇是使用mysqldump的查詢部分從生產側卸只有新的記錄。再次 - 讓mysqldump離開'drop/create'位。

+0

謝謝,我如何管理更新記錄?我想這裏的記錄已經被編入索引。 – Daniele

+0

對於場景#2,您需要一些方法來識別它們。對於#1你轉儲一切,讓獨特的鍵排列出來。這有點苛刻,但確實有效。 – ethrbunny

相關問題