2009-01-08 122 views
10

現在我們使用PostgreSQL 8.3(在Linux上)作爲我們的Ruby on Rails Web應用程序的數據庫後端。考慮到在PostgreSQL數據庫中我們主要使用行級別阻塞和PL/PGSQL,我們可以採用什麼來保護我們的數據 - 我的意思是工具,包,腳本和策略 - 成功複製數據庫並構建多級數據庫,主組合?PostgreSQL複製策略

我會欣賞主從建議。例如,如果我將幾個運行Apache/Ruby的應用程序服務器實現更高的性能,並在最後部署多個數據庫服務器,那麼有沒有辦法在PostgreSQL中構建多主複製?

現在我們使用PostgreSQL WAL機制將數據備份到文件系統。

非常感謝。

回答

12

有幾種工具可用於主 - 從(和主 - 多平面)場景,通常是基於觸發的。已經提到了Slony-I(穩定穩固,但有點難以操作)。與Slony-I有問題的人寫了 Londiste(Skype團隊)和PyReplica。呸,我只是發現 Mammoth已經開源

對於多主機有Bucardo(注:它不是拋光) 或商業產品 - 由ContinuentCyberTec例如。

1

我雖然Postgres-R看起來很有希望,但是,它仍在發展中。

它被認爲是穩定的,並聲稱是一個與標準問題整合的潛力,但其尚未實現。

1

晚的答案,但有PostgreSQL的異步主 - 主複製一個新的開源軟件(也適用於MySQL的): rubyrep

重點是易於安裝。 披露:我寫了。

+0

很酷...我正在嘗試。 – Bharath 2009-06-10 09:49:45

2

嗯,Bucardo真的不錯,穩定,相較於這裏的其他人。它可以像基於Perl的複製系統一樣精緻,並且支持主從式以及多主複製,並帶有有趣的衝突解決概念。

如果您需要簡單的主從代表,我建議Londiste,但對於多主人的需求,Bucardo是唯一可以接受的解決方案恕我直言。