2013-02-01 37 views
0

我有兩個版本的博客:第一個是用PHP編寫的,使用MySQL,但第二個是用Python編寫的,使用Postgres。將數據移動到其他數據庫的最簡單方法

我的目標是將數據從一個移動到另一個。表名稱和模式更改。

我的想法是爲舊站點創建ORM模型,並且使用循環,使用ORM獲取數據並將其放入新數據庫,因爲我的新站點也有ORM模型。

它看起來是這樣的:

old_articles = OldArticle.objects.all() 
for old_article in old_articles: 
    new_article = NewArticle() 
    new_article.title = old_article.name 
    new_article.content = old_article.body 
    new_article.save() 

ORM將數據庫之間容易抽象的差異,在我看來,這可能實際工作!或者不,有更好的方法嗎?

回答

1

如果這個遷移將只進行一次,我不會去的ORM方式。可以從MySQL導出符合標準的SQL轉儲,並且可以將轉儲輕鬆導入到PostgreSQL中。一旦數據在PostgreSQL裏,運行你的遷移查詢來改變方案或者使用臨時的'導入'表,並將數據複製到新方案/佈局中的表中。

測試您的所有遷移查詢,並編寫包含要採取的所有步驟,運行哪些查詢以及以何種順序的方案。還包括需要執行的手動步驟。

確定遷移方案是正確的並經過充分測試後,將您的舊博客置於「維護模式」(對不起,我們處於離線狀態,我們很快會回來),並且實現它!

最重要的是:測試你的場景,驗證結果,並花時間,你永遠不應該匆忙這些東西!

相關問題