Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memigrasi data dari database Oracle lokal ke Aurora PostgreSQL
Michelle Deng dan Shunan Xiang, Amazon Web Services
Ringkasan
Pola ini memberikan panduan untuk migrasi data dari database Oracle lokal ke Amazon Aurora PostgreSQL Edisi yang kompatibel dengan Amazon Aurora. Ini menargetkan strategi migrasi data online dengan jumlah downtime minimal untuk database Oracle multi-terabyte yang berisi tabel besar dengan aktivitas bahasa manipulasi data tinggi (DML/bahasa manipulasi data tinggi). Database siaga Oracle Active Data Guard digunakan sebagai sumber untuk membongkar migrasi data dari database utama. Replikasi dari database utama Oracle ke standby dapat ditangguhkan selama beban penuh untuk menghindari kesalahan ORA-01555.
Kolom tabel di kunci utama (PKs) atau kunci asing (FKs), dengan tipe data NUMBER, biasanya digunakan untuk menyimpan bilangan bulat di Oracle. Kami menyarankan Anda mengonversinya menjadi INT atau BIGINT di PostgreSQL untuk kinerja yang lebih baik. Anda dapat menggunakan AWS Schema Conversion Tool (AWS SCT) untuk mengubah pemetaan tipe data default untuk kolom PK dan FK. (Untuk informasi selengkapnya, lihat postingan blog AWS Mengonversi tipe data NUMBER dari Oracle ke PostgreSQL
Anda juga dapat menggunakan pola ini untuk memigrasikan database Oracle lokal ke Amazon Relational Database Service (Amazon RDS) untuk PostgreSQL, atau database Oracle yang di-host di Amazon Elastic Compute Cloud (Amazon) ke EC2 Amazon RDS for PostgreSQL atau Aurora PostgreSQL yang kompatibel dengan Aurora.
Prasyarat dan batasan
Prasyarat
Akun AWS yang aktif
Database sumber Oracle di pusat data lokal dengan siaga Active Data Guard yang dikonfigurasi
AWS Direct Connect dikonfigurasi antara pusat data lokal dan AWS Cloud
Keakraban dengan menggunakan database Oracle sebagai sumber AWS DMS
Keakraban dengan menggunakan database PostgreSQL sebagai target AWS DMS
Batasan
Cluster database Amazon Aurora dapat dibuat dengan penyimpanan hingga 128 TiB. Instans database Amazon RDS for PostgreSQL dapat dibuat dengan penyimpanan hingga 64 TiB. Untuk informasi penyimpanan terbaru, lihat penyimpanan dan keandalan Amazon Aurora serta penyimpanan instans Amazon RDS DB dalam dokumentasi AWS.
Versi produk
AWS DMS mendukung semua edisi database Oracle untuk versi 10.2 dan yang lebih baru (untuk versi 10.x), 11g dan hingga 12.2, 18c, dan 19c. Untuk daftar terbaru versi yang didukung, lihat Menggunakan Database Oracle sebagai Sumber untuk AWS DMS dalam dokumentasi AWS.
Arsitektur
Tumpukan teknologi sumber
Database Oracle lokal dengan siaga Oracle Active Data Guard yang dikonfigurasi
Tumpukan teknologi target
Kompatibel dengan Aurora PostgreSQL
Arsitektur migrasi data

Alat
AWS DMS - AWS Database Migration Service (AWS DMS) mendukung beberapa basis data sumber dan target. Lihat Menggunakan Database Oracle sebagai Sumber untuk AWS DMS dalam dokumentasi AWS DMS untuk daftar versi dan edisi database target dan sumber Oracle yang didukung. Jika database sumber tidak didukung oleh AWS DMS, Anda harus memilih metode lain untuk memigrasikan data di Fase 6 (di bagian Epics). Catatan penting: Karena ini adalah migrasi heterogen, Anda harus terlebih dahulu memeriksa untuk melihat apakah database mendukung aplikasi komersial off-the-shelf (COTS). Jika aplikasinya COTS, konsultasikan dengan vendor untuk mengonfirmasi bahwa Aurora PostgreSQL kompatibel didukung sebelum melanjutkan. Untuk informasi selengkapnya, lihat Panduan Step-by-Step Migrasi AWS DMS di dokumentasi AWS.
AWS SCT - AWS Schema Conversion Tool (AWS SCT) memfasilitasi migrasi database heterogen dengan secara otomatis mengonversi skema basis data sumber dan sebagian besar kode kustom ke format yang kompatibel dengan database target. Kode khusus yang dikonversi alat mencakup tampilan, prosedur tersimpan, dan fungsi. Kode apa pun yang tidak dapat dikonversi oleh alat secara otomatis ditandai dengan jelas sehingga Anda dapat mengonversinya sendiri.
Epik
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
| Validasi versi basis data sumber dan target. | DBA | |
| Instal AWS SCT dan driver. | DBA | |
| Tambahkan dan validasi pengguna prasyarat AWS SCT dan database sumber hibah. | DBA | |
| Buat proyek AWS SCT untuk beban kerja, dan sambungkan ke database sumber. | DBA | |
| Menghasilkan laporan penilaian dan mengevaluasi kelayakan. | DBA, Pemilik aplikasi |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
| Buat database target yang kompatibel dengan Aurora PostgreSQL. | DBA | |
| Ekstrak daftar pengguna, peran, dan hibah dari database sumber. | DBA | |
| Memetakan pengguna database yang ada untuk pengguna database baru. | Pemilik aplikasi | |
| Buat pengguna di database target. | DBA | |
| Terapkan peran dari langkah sebelumnya ke database target yang kompatibel dengan Aurora PostgreSQL. | DBA | |
| Tinjau opsi basis data, parameter, file jaringan, dan tautan basis data dari basis data sumber, dan evaluasi penerapannya ke basis data target. | DBA, Pemilik aplikasi | |
| Terapkan pengaturan yang relevan ke database target. | DBA |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
| Konfigurasikan konektivitas AWS SCT ke database target. | DBA | |
| Konversikan skema di AWS SCT, dan simpan kode yang dikonversi sebagai file.sql. | DBA, Pemilik aplikasi | |
| Secara manual mengonversi objek database apa pun yang gagal dikonversi secara otomatis. | DBA, Pemilik aplikasi | |
| Optimalkan konversi kode database. | DBA, Pemilik aplikasi | |
| Pisahkan file.sql menjadi beberapa file.sql berdasarkan jenis objek. | DBA, Pemilik aplikasi | |
| Validasi skrip SQL dalam database target. | DBA, Pemilik aplikasi |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
| Buat instans replikasi AWS DMS. | DBA | |
| Buat titik akhir sumber dan target. | Jika tipe data PKs dan FKs dikonversi dari NUMBER di Oracle ke BIGINT di PostgreSQL, pertimbangkan untuk menentukan atribut koneksi saat Anda membuat titik akhir sumber. | DBA |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
| Buat skema dan tabel dalam database target. | DBA | |
| Buat tugas beban penuh AWS DMS dengan mengelompokkan tabel atau membagi tabel besar berdasarkan ukuran tabel. | DBA | |
| Hentikan aplikasi pada database sumber Oracle untuk waktu yang singkat. | Pemilik aplikasi | |
| Verifikasi bahwa database siaga Oracle sinkron dengan database utama, dan hentikan replikasi dari database utama ke database siaga. | DBA, Pemilik aplikasi | |
| Mulai aplikasi pada database sumber Oracle. | Pemilik aplikasi | |
| Mulai tugas beban penuh AWS DMS secara paralel dari database siaga Oracle ke database yang kompatibel dengan Aurora PostgreSQL. | DBA | |
| Buat PKs dan indeks sekunder setelah beban penuh selesai. | DBA | |
| Validasi data. | DBA |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
| Buat tugas replikasi berkelanjutan AWS DMS dengan menentukan waktu mulai CDC kustom atau nomor perubahan sistem (SCN) saat siaga Oracle disinkronkan dengan database utama, dan sebelum aplikasi dimulai ulang di tugas sebelumnya. | DBA | |
| Mulai tugas AWS DMS secara paralel untuk mereplikasi perubahan yang sedang berlangsung dari database siaga Oracle ke database yang kompatibel dengan Aurora PostgreSQL. | DBA | |
| Membangun kembali replikasi dari database utama Oracle ke database siaga. | DBA | |
| Memantau log dan menghentikan aplikasi pada database Oracle ketika target database Aurora PostgreSQL kompatibel hampir sinkron dengan database sumber Oracle. | DBA, Pemilik aplikasi | |
| Hentikan tugas AWS DMS ketika target sepenuhnya disinkronkan dengan database Oracle sumber. | DBA | |
| Membuat FKs dan memvalidasi data dalam database target. | DBA | |
| Buat fungsi, tampilan, pemicu, urutan, dan jenis objek lainnya dalam database target. | DBA | |
| Terapkan hibah peran dalam database target. | DBA |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
| Gunakan AWS SCT untuk menganalisis dan mengonversi pernyataan SQL di dalam kode aplikasi. | Pemilik aplikasi | |
| Buat server aplikasi baru di AWS. | Pemilik aplikasi | |
| Migrasikan kode aplikasi ke server baru. | Pemilik aplikasi | |
| Konfigurasikan server aplikasi untuk database target dan driver. | Pemilik aplikasi | |
| Perbaiki kode apa pun yang khusus untuk mesin basis data sumber dalam aplikasi. | Pemilik aplikasi | |
| Optimalkan kode aplikasi untuk database target. | Pemilik aplikasi |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
| Arahkan server aplikasi baru ke database target. | DBA, Pemilik aplikasi | |
| Lakukan pemeriksaan kewarasan. | DBA, Pemilik aplikasi | |
| Pergilah hidup. | DBA, Pemilik aplikasi |
| Tugas | Deskripsi | Keterampilan yang dibutuhkan |
|---|---|---|
| Matikan sumber daya AWS sementara. | DBA, Administrator sistem | |
| Meninjau dan memvalidasi dokumen proyek. | DBA, Pemilik aplikasi | |
| Kumpulkan metrik untuk waktu migrasi, persentase penggunaan manual versus alat, penghematan biaya, dan data serupa. | DBA, Pemilik aplikasi | |
| Tutup proyek dan berikan umpan balik. | DBA, Pemilik aplikasi |
Sumber daya terkait
Referensi
Tutorial