Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Migrasikan Amazon RDS for Oracle ke Amazon RDS untuk PostgreSQL dengan dan menggunakan dan AWS SCTAWS DMSAWS CLICloudFormation
Pinesh Singal, Amazon Web Services
Ringkasan
Pola ini menunjukkan cara memigrasikan Amazon Relational Database Service (Amazon RDS) multi-terabyte untuk instans Oracle DB ke instans Amazon RDS for PostgreSQL DB dengan menggunakan (). AWS Command Line Interface AWS CLI Pendekatan ini memberikan waktu henti minimal dan tidak perlu masuk ke. Konsol Manajemen AWS
Pola ini membantu menghindari konfigurasi manual dan migrasi individual dengan menggunakan konsol AWS Schema Conversion Tool (AWS SCT) dan AWS Database Migration Service (AWS DMS). Solusinya menyiapkan konfigurasi satu kali untuk beberapa database dan melakukan migrasi dengan menggunakan AWS SCT dan AWS DMS di file. AWS CLI
Pola ini digunakan AWS SCT untuk mengonversi objek skema database dari Amazon RDS for Oracle ke Amazon RDS for PostgreSQL, dan kemudian digunakan untuk memigrasikan data. AWS DMS Menggunakan skrip Python di AWS CLI, Anda membuat AWS SCT objek dan AWS DMS tugas dengan template. CloudFormation
Prasyarat dan batasan
Prasyarat
Aktif Akun AWS.
Instans Amazon RDS for Oracle DB yang ada.
Amazon RDS yang ada untuk instans DB Amazon RDS for PostgreSQL.
Instans Amazon Elastic Compute Cloud (Amazon EC2) atau mesin lokal dengan OS Windows atau Linux untuk menjalankan skrip.
Pemahaman tentang jenis tugas AWS DMS migrasi berikut:
full-load,cdc,full-load-and-cdc. Untuk informasi selengkapnya, lihat Membuat tugas dalam AWS DMS dokumentasi.AWS SCT, diinstal dan dikonfigurasi dengan driver Java Database Connectivity (JDBC) untuk mesin database Oracle dan PostgreSQL. Untuk informasi selengkapnya, lihat Menginstal dan mengonfigurasi AWS SCT dalam AWS SCT dokumentasi.
AWSSchemaConversionToolBatch.jarFile dari AWS SCT folder yang diinstal, disalin ke direktori kerja Anda.cli-sct-dms-cft.zipFile (terlampir), diunduh dan diekstraksi di direktori kerja Anda.Versi mesin contoh AWS DMS replikasi terbaru. Untuk informasi selengkapnya, lihat Bagaimana cara membuat instance AWS DMS replikasi
dalam AWS Dukungan dokumentasi dan catatan AWS DMS rilis. AWS CLI versi 2, diinstal dan dikonfigurasi dengan ID kunci akses Anda, kunci akses rahasia, dan Wilayah AWS nama default untuk EC2 instance atau OS tempat skrip dijalankan. Untuk informasi selengkapnya, lihat Menginstal atau memperbarui ke versi terbaru AWS CLI dan Mengkonfigurasi pengaturan untuk AWS CLI dokumentasi. AWS CLI
Keakraban dengan CloudFormation template. Untuk informasi selengkapnya, lihat Cara CloudFormation kerja dalam CloudFormation dokumentasi.
Python versi 3, diinstal dan dikonfigurasi pada EC2 instance atau OS tempat skrip dijalankan. Untuk informasi selengkapnya, lihat dokumentasi Python
.
Batasan
Persyaratan minimum untuk instans Amazon RDS for Oracle DB sumber Anda adalah:
Oracle versi 12c (12.1.0.2, 12.2.0.1), 18c (18.0.0.0), dan 19c (19.0.0.0) untuk edisi Enterprise, Standard, Standard One, dan Standard Two.
Meskipun Amazon RDS mendukung Oracle 18c (18.0.0.0), versi ini berada di jalur penghentian karena Oracle tidak lagi menyediakan tambalan untuk 18c setelah tanggal. end-of-support Untuk informasi selengkapnya, lihat Amazon RDS for Oracle di dokumentasi Amazon RDS.
Amazon RDS for Oracle 11g tidak lagi didukung.
Persyaratan minimum untuk instans Amazon RDS for PostgreSQL DB target Anda adalah:
PostgreSQL versi 9 (9.5 dan 9.6), 10.x, 11.x, 12.x, dan 13.x
Versi produk
Amazon RDS for Oracle DB instans versi 12.1.0.2 dan yang lebih baru
Amazon RDS untuk instans PostgreSQL DB versi 11.5 dan yang lebih baru
AWS CLI versi 2
Versi terbaru dari AWS SCT
Versi terbaru Python 3
Arsitektur
Tumpukan teknologi sumber
Amazon RDS for Oracle
Tumpukan teknologi target
Amazon RDS for PostgreSQL
Arsitektur sumber dan target
Diagram berikut menunjukkan migrasi instans Amazon RDS for Oracle DB ke instans Amazon RDS for PostgreSQL DB menggunakan skrip Python. AWS DMS

Diagram menunjukkan alur kerja migrasi berikut:
Skrip Python digunakan AWS SCT untuk terhubung ke sumber dan menargetkan instance DB.
Pengguna mulai AWS SCT dengan skrip Python, mengonversi kode Oracle ke kode PostgreSQL, dan menjalankannya pada instance DB target.
Skrip Python membuat tugas AWS DMS replikasi untuk instance DB sumber dan target.
Pengguna menyebarkan skrip Python untuk memulai AWS DMS tugas dan kemudian menghentikan tugas setelah migrasi data selesai.
Otomatisasi dan skala
Anda dapat mengotomatiskan migrasi ini dengan menambahkan parameter dan perubahan terkait keamanan ke skrip Python Anda, untuk menyediakan fungsionalitas tambahan.
Alat
AWS Command Line Interface (AWS CLI) adalah alat sumber terbuka yang membantu Anda berinteraksi dengan layanan AWS melalui perintah di shell baris perintah Anda.
CloudFormationmembantu Anda menyiapkan sumber daya AWS, menyediakannya dengan cepat dan konsisten, serta mengelolanya sepanjang siklus hidupnya di seluruh Akun AWS dan Wilayah. Pola ini mengkonversi file
.csvinput ke file.jsoninput dengan menggunakan script Python..jsonFile ini digunakan dalam AWS CLI perintah untuk membuat CloudFormation tumpukan yang membuat beberapa tugas AWS DMS replikasi dengan Amazon Resource Names (ARNs), tipe migrasi, pengaturan tugas, dan pemetaan tabel.AWS Database Migration Service (AWS DMS) membantu Anda memigrasikan penyimpanan data ke AWS Cloud atau di antara kombinasi pengaturan cloud dan lokal. Pola ini digunakan AWS DMS untuk membuat, memulai, dan menghentikan tugas dengan skrip Python yang berjalan pada baris perintah, dan untuk membuat template. CloudFormation
AWS Schema Conversion Tool (AWS SCT) mendukung migrasi database heterogen dengan secara otomatis mengonversi skema basis data sumber dan sebagian besar kode kustom ke format yang kompatibel dengan database target. Pola ini membutuhkan
AWSSchemaConversionToolBatch.jarfile dari AWS SCT direktori yang diinstal.
Kode
cli-sct-dms-cft.zipFile (terlampir) berisi kode sumber lengkap untuk pola ini.
Epik
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
AWS SCT Konfigurasikan untuk menjalankan dari file AWS CLI. |
| DBA |
Jalankan | Jalankan skrip
Script Python mengkonversi objek database dari Oracle ke PostgreSQL dan membuat file SQL dalam format PostgreSQL. Skrip ini juga membuat file PDF | DBA |
Buat objek di Amazon RDS untuk PostgreSQL. |
| DBA |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Buat contoh AWS DMS replikasi. | Masuk ke Konsol Manajemen AWS, buka AWS DMS konsol Untuk informasi selengkapnya, lihat Membuat instance replikasi dalam AWS DMS dokumentasi dan Bagaimana cara membuat instance AWS DMS replikasi | DBA |
Buat titik akhir sumber. | Di AWS DMS konsol, pilih Endpoint dan kemudian buat titik akhir sumber untuk database Oracle sesuai dengan kebutuhan Anda. catatanAtribut koneksi tambahan harus Untuk informasi selengkapnya, lihat Membuat titik akhir sumber dan target dalam AWS DMS dokumentasi. | DBA |
Buat titik akhir target. | Di AWS DMS konsol, pilih Endpoint dan kemudian buat titik akhir target untuk database PostgreSQL sesuai dengan kebutuhan Anda. Untuk informasi selengkapnya, lihat Membuat titik akhir sumber dan target dalam AWS DMS dokumentasi. | DevOps insinyur |
Konfigurasikan detail AWS DMS replikasi untuk dijalankan dari file. AWS CLI | Konfigurasikan titik akhir AWS DMS sumber dan target serta detail replikasi dalam
| DBA |
Jalankan skrip |
| DBA |
Verifikasi bahwa AWS DMS tugas sudah siap. | Di AWS DMS konsol, periksa apakah AWS DMS tugas Anda dalam | DBA |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
Mulai AWS DMS tugas. | Jalankan skrip
catatanTanggal dan waktu mulai harus dalam Anda dapat meninjau status AWS DMS tugas di tab Statistik tabel di halaman Tugas AWS DMS konsol. | DBA |
Validasi data. |
Untuk informasi selengkapnya, lihat validasi AWS DMS data dalam AWS DMS dokumentasi. | DBA |
Hentikan AWS DMS tugas. | Jalankan skrip Python dengan menggunakan perintah berikut:
catatanAWS DMS tugas mungkin berhenti dengan | DBA |
Pemecahan Masalah
| Isu | Solusi |
|---|---|
AWS SCT koneksi uji sumber dan target gagal. | Konfigurasikan versi driver JDBC dan aturan masuk grup keamanan VPC untuk menerima lalu lintas masuk. |
Uji coba sumber atau target titik akhir gagal. | Periksa apakah pengaturan titik akhir dan contoh replikasi berada dalam Untuk informasi selengkapnya, lihat Bagaimana cara memecahkan masalah kegagalan konektivitas titik akhir AWS DMS |
Proses beban penuh gagal. | Periksa apakah basis data sumber dan target memiliki tipe dan ukuran data yang cocok. Untuk informasi selengkapnya, lihat Memecahkan masalah tugas migrasi AWS DMS dalam dokumentasi. AWS DMS |
Anda menemukan kesalahan menjalankan validasi. | Periksa apakah tabel memiliki kunci primer karena tabel kunci non-primer tidak divalidasi. Jika tabel memiliki kunci utama dan kesalahan, periksa apakah atribut koneksi tambahan di titik akhir sumber memiliki Untuk informasi selengkapnya, lihat Pengaturan titik akhir saat menggunakan Oracle sebagai sumber untuk AWS DMSOracleSettings, dan Pemecahan Masalah dalam dokumentasi. AWS DMS |
Sumber daya terkait
Pengantar AWS DMS
(video) Contoh perintah operasi CloudFormation tumpukan untuk AWS CLI dan PowerShell
cloudformation (dokumentasi
)AWS CLI buat-tumpukan (dokumentasi
)AWS CLI dms
(AWS CLI dokumentasi)
Lampiran
Untuk mengakses konten tambahan yang terkait dengan dokumen ini, unzip file berikut: attachment.zip