使用 AWS Database Migration 和 AWS SCT 將 Oracle 資料庫遷移至 Aurora PostgreSQL - AWS Prescriptive Guidance

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 AWS Database Migration 和 AWS SCT 將 Oracle 資料庫遷移至 Aurora PostgreSQL

由馬克·薩爾科維奇 (AWS) 創建

R 類型 重新架構

來源:資料庫:關聯

目標:Amazon Aurora PostgreSQL

建立者:AWS

:Conment PoC 或試驗

Technologies 資料庫; 移轉

工作負載:Oracle

AWS 服務:Amazon Aurora

Summary

此模式說明如何使用 AWS 資料遷移服務 (AWS DMS) 和 AWS Schema Conversion Tool (AWS SCT),將 Oracle 資料庫遷移至與 Amazon Aurora PostgreSQL 相容的版本。 

此模式涵蓋現場部署中的來源 Oracle 資料庫、安裝在 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體的 Oracle 資料庫,以及適用於 Oracle 資料庫的 Amazon Relations Database Service (Amazon RDS)。該模式將這些數據庫轉換為與 Aurora PostgreQ 兼容的。

先決條件和限制

先決條件

  • 作用中的 AWS 帳戶

  • 位於現場部署資料中心或 AWS 雲端的 Oracle 資料庫。

  • 安裝在本機電腦上或 EC2 執行個體上的 SQL 用戶端。

  • 適用於 AWS SCT 連接器的 Java 資料庫連線 (JDBC) 驅動程式,安裝在安裝 AWS SCT 的本機機器或 EC2 執行個體上。

  • 如果來源資料庫支援商業現成 (COTS) 應用程式或廠商特定,您可能無法將其轉換為其他資料庫引擎。在使用此模式之前,請確認應用程式支援與 Aurora PostgreSQL 相容的功能。 

限制

  • 資料庫大小限制:64 TB 

產品版本

Architecture

來源技術堆疊

下列其中一項:

  • 內部署 Oracle 資料庫

  • EC2 執行個體上的 Oracle 資料庫  

  • Amazon RDS for Oracle 資料庫執行個體

目標技術堆疊

  • Aurora PostgreSQL 相容 

目標架構

資料遷移架構

  • 從 AWS 雲端中運作的 Oracle 資料庫

  • 從內部部署資料中心執行的 Oracle 資料庫

Tools

  • AWS DMS-AWS 資料遷移服務(AWS DMS) 可協助您將資料在廣為使用的商業資料庫之間來回遷移,包括 Oracle、MySQL 和 PostgreSQL。此服務支援同質遷移 (例如 Oracle 至 Oracle) 以及異質遷移 (例如 Oracle 至 PostgreSQL 或 MySQL 至 Oracle)。 

  • AWS SCT-AWS Schema Conversion Tool(AWS SCT) 讓異質資料庫遷移變得更容易,因為它會自動將來源資料庫結構描述和大多數的自訂程式碼,轉換成與目標資料庫相容的格式。

Epics

任務描述所需技能
驗證來源與目標資料庫版本與引擎。

DBA
建立來源和目標資料庫的輸出安全群組。

SysAdmin
視需要為 AWS SCT 建立和設定 EC2 執行個體。

DBA
下載最新版本的 AWS SCT 和相關驅動程式。

DBA
在來源資料庫中新增和驗證必要條件使用者和授權。

DBA
為工作負載建立 AWS SCT 專案並連線到來源資料庫。

DBA
產生評估報告並評估可行性。

DBA
任務描述所需技能
使用 Amazon Aurora 做為資料庫引擎,建立目標 Amazon RDS 資料庫執行個體。

DBA
從來源擷取使用者、角色和授權清單。

DBA
將現有的資料庫使用者對應至新的資料庫使用者。

委任人
在目標資料庫中建立使用者。

DBA, 委任人
將上一個步驟的角色套用至目標資料庫。

DBA
從來源複查資料庫中選項、參數、網路檔案和資料庫連結,然後評估對目標的適用性。

DBA
將任何相關設定套用至目標。

DBA
任務描述所需技能
設定 AWS SCT 連接到目標資料庫的連線。

DBA
使用 AWS SCT 轉換結構描述。

AWS SCT 會自動將來源資料庫結構描述和大多數自訂程式碼轉換為與目標資料庫相容的格式。工具無法自動轉換的任何程式碼都會清楚標示,以便您可以自行轉換。

DBA
複查產生的 SQL 報告,並儲存任何錯誤和警告。

DBA
將自動結構描述變更套用至目標,或將它們儲存為 .sql 檔案。

DBA
驗證 AWS SCT 是否在目標上建立了物件。

DBA
手動重寫、拒絕或重新設計任何無法自動轉換的項目。

DBA, 委任人
套用產生的角色和使用者授與,並檢閱任何例外狀況。

DBA
任務描述所需技能
決定移轉方法。

DBA
從 AWS DMS 主控台建立複寫執行個體。

DBA
建立來源與目標端點。

DBA
建立複寫任務。

DBA
啟動複寫工作並監視記錄。

DBA
任務描述所需技能
使用 AWS SCT 分析和轉換應用程式程式碼中的 SQL 項目。

當您將資料庫結構描述從一個引擎轉換到另一個引擎,您也需更新應用程式中的 SQL 程式碼,以便與新的資料庫引擎互動,取代舊引擎。您可以檢視、分析、編輯和儲存轉換後的 SQL 程式碼。

委任人
在 AWS 上建立新的應用程式伺服器。

委任人
將應用程式程式碼移轉至新的伺服器。

委任人
設定目標資料庫和驅動程式的應用程式伺服器。

委任人
修正應用程式中特定於來源資料庫引擎的任何程式碼。

委任人
最佳化目標引擎的應用程式程式碼。

委任人
任務描述所需技能
執行轉換。

DBA
鎖定應用程式,避免任何進一步的變更。

委任人
驗證是否將所有變更傳播到目標資料庫。

DBA
將新的應用程式伺服器指向目標資料庫。

委任人
執行最終完整的系統檢查。

委任人
去直播

委任人
任務描述所需技能
關閉臨時 AWS 資源 (用於 AWS SCT 的 AWS DMS 複寫執行個體和 EC2 執行個體)。

DBA, 委任人
針對內部團隊更新 AWS DMS 程序的意見反應。

DBA, 委任人
修訂 AWS DMS 程序,並視需要改善範本。

DBA, 委任人
複查並驗證專案文件。

DBA, 委任人
收集需要移轉的時間指標、節省手動與工具成本的百分比,依此類推。

DBA, 委任人
關閉專案並提供任何意見反應。

DBA, 委任人

References

教學和影片