0

我們有一個相當大的(至少對我們來說)擁有超過20,000個表的數據庫,它在AWS EC2實例中運行,但由於以下幾個原因, d想將其移入AWS RDS實例。我們嘗試了幾種不同的方法來遷移到RDS,但根據所涉及的數據量(2TB)和RDS的限制(用戶和權限)以及兼容性問題,我們無法完成此任務。從AWS EC2實例到Amazon RDS的逐步PostgreSQL數據庫遷移

鑑於上述事實,我在想,如果PostgreSQL的實際支持像映射遠程模式到數據庫中,如果有可能,我們可以試着鼓搗每架構遷移個人和,而不是整個數據庫一次,這實際上會讓這個過程變得更加痛苦。

我已閱讀關於IMPORT FOREIGN SCHEMA功能,似乎是supported from version 9.5,這似乎在做伎倆,但有沒有類似於9.4.9?

+0

如果它是一個新的RDS實例,爲什麼不讓它[9.6.1?](http://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_PostgreSQL.html#PostgreSQL.Concepts.General.DBVersions ) – pozs

+0

在RDS方面@pozs肯定是一個選項,但是我不需要9.5+在另一方爲IMPORT FOREIGN SCHEMA工作?我會擔心使用RDS實例作爲「使用中」數據庫的方法,因爲這會假設最初所有的模式都是遠程的,我將不得不逐漸「本地化」它們,而不是相反使用EC2實例並逐漸將模式設置爲遠程。 – gvasquez

+0

@gvasques對於'IMPORT FOREIGN SCHEMA'工作,'postgres_fdw'需要支持它,它位於「主機」端。另請參閱[跨版本兼容性](https://www.postgresql.org/docs/current/static/postgres-fdw.html#AEN183114)。 – pozs

回答

1

您可能需要查看AWS數據庫遷移工具以及相關的模式遷移工具。

這可以將數據從現有數據庫移動到RDS中,並轉換 - 或至少報告需要更改的內容 - 模式和關聯對象。

您可以在AWS中運行此操作,將它指向現有基於EC2的數據庫作爲源,並使用新的RDS實例作爲目標。

+0

這裏值得一提的是,DMS似乎支持一個連續的遷移過程,這樣當你「完成」時,目標數據庫可以與源代碼保持同步,所以你不僅僅是坐在凍結的數據庫快照上,而是而是保持同步的副本,直到您準備通過將應用程序移動到目標來放棄源數據庫...如果我正確地閱讀它。 –

+0

@ Michael-sqlbot:這是正確的。通常需要一些限制或配置更改才能支持連續遷移(即對於mysql,您必須使用基於行的複製),但如果您可以遵守限制,則目標可以與源保持同步。 – chris

+0

已經嘗試使用DMS工具,但不支持在我們的數據庫中存在的al結構,因爲它在遷移過程中發現了400多個問題:( – gvasquez

相關問題