Migrasikan PeopleSoft database Oracle ke AWS dengan menggunakan AWS DMS - AWS Prescriptive Guidance

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Migrasikan PeopleSoft database Oracle ke AWS dengan menggunakan AWS DMS

sampath kathirvel, Amazon Web Services

Ringkasan

Oracle PeopleSoft adalah solusi perencanaan sumber daya perusahaan (ERP) untuk proses di seluruh perusahaan. PeopleSoft memiliki arsitektur tiga tingkat: klien, aplikasi, dan database. PeopleSoft dapat dijalankan di Amazon Relational Database Service (Amazon RDS).

Jika Anda memigrasikan database Oracle ke Amazon RDS, Amazon Web Services (AWS) dapat menangani tugas pencadangan dan ketersediaan tinggi, sehingga Anda bebas berkonsentrasi pada pemeliharaan PeopleSoft aplikasi dan fungsinya. Untuk mengetahui daftar lengkap faktor kunci yang perlu dipertimbangkan selama proses migrasi, lihat Strategi migrasi database Oracle di AWS Prescriptive Guidance.

Pola ini memberikan solusi untuk memigrasikan database Oracle lokal Anda ke Amazon RDS for Oracle menggunakan Oracle Data Pump dengan AWS Database Migration Service (AWS DMS) dan fitur change data capture (CDC).

Saat memigrasikan aplikasi ERP penting seperti Oracle PeopleSoft, meminimalkan waktu henti adalah kuncinya. AWS DMS meminimalkan waktu henti dengan mendukung beban penuh dan replikasi berkelanjutan. dari database sumber ke database target. AWS DMS juga menyediakan pemantauan dan pencatatan migrasi secara real-time, yang dapat membantu Anda mengidentifikasi dan menyelesaikan masalah apa pun yang dapat menyebabkan waktu henti.

Saat mereplikasi perubahan dengan AWS DMS, Anda harus menentukan waktu atau nomor perubahan sistem (SCN) sebagai titik awal AWS DMS untuk membaca perubahan dari log database. Sangat penting untuk menjaga agar log ini dapat diakses di server untuk jangka waktu yang ditentukan untuk memastikan bahwa AWS DMS memiliki akses ke perubahan ini.

Prasyarat dan batasan

Prasyarat

  • Basis data Amazon RDS for Oracle yang disediakan di lingkungan AWS Cloud Anda sebagai basis data target.

  • PeopleSoft Database Oracle yang berjalan di tempat atau di Amazon Elastic Compute Cloud EC2 (Amazon) di AWS Cloud.

    catatan

    Pola ini dirancang untuk bermigrasi dari lokasi ke AWS, tetapi diuji dengan menggunakan Oracle Database pada instans Amazon EC2 . Untuk bermigrasi dari tempat, Anda perlu mengonfigurasi konektivitas jaringan yang sesuai.

  • Rincian skema. Saat memigrasikan PeopleSoft aplikasi Oracle ke Amazon RDS for Oracle, perlu untuk mengidentifikasi skema database Oracle mana (misalnya,) untuk bermigrasi. SYSADM Sebelum memulai proses migrasi, kumpulkan rincian berikut tentang skema:

    • Size

    • Jumlah objek per jenis objek

    • Jumlah objek yang tidak valid.

    Informasi ini akan membantu proses migrasi.

Batasan

  • Skenario ini telah diuji hanya dengan database PeopleSoft DEMO. Itu belum diuji dengan dataset besar.

Arsitektur

Diagram berikut menunjukkan instance yang menjalankan database Oracle sebagai database sumber dan database Amazon RDS for Oracle sebagai database target. Data diekspor dan diimpor dari database Oracle sumber ke database Amazon RDS for Oracle target menggunakan Oracle Data Pump dan direplikasi untuk perubahan CDC menggunakan AWS DMS.

Proses lima langkah dari instans DB lokal ke Amazon RDS.
  1. Langkah awal melibatkan ekstraksi data dari database sumber dengan menggunakan Oracle Data Pump, diikuti dengan mengirimkannya ke target database Amazon RDS for Oracle.

  2. Data dikirim dari database sumber ke titik akhir sumber di AWS DMS.

  3. Dari titik akhir sumber, data dikirim ke instans replikasi AWS DMS, tempat tugas replikasi dilakukan.

  4. Setelah tugas replikasi selesai, data dikirim ke titik akhir target di AWS DMS.

  5. Dari titik akhir target, data dikirim ke instans database Amazon RDS for Oracle.

Alat

Layanan AWS

Layanan lainnya

  • Oracle Data Pump membantu Anda memindahkan data dan metadata dari satu database ke database lainnya dengan kecepatan tinggi.

Praktik terbaik

Migrating LOBs

Jika database sumber Anda berisi objek biner besar (LOBs) yang perlu dimigrasikan ke database target, AWS DMS menyediakan opsi berikut:

  • Mode LOB penuh — AWS DMS memigrasikan semua LOBs dari sumber ke database target terlepas dari ukurannya. Meskipun migrasi lebih lambat, keuntungannya adalah data tidak terpotong. Untuk kinerja yang lebih baik, Anda dapat membuat tugas terpisah pada instance replikasi baru untuk memigrasikan tabel yang memiliki LOBs ukuran lebih besar dari beberapa megabyte.

  • Mode LOB terbatas - Anda menentukan ukuran maksimum data kolom LOB, yang memungkinkan AWS DMS mengalokasikan sumber daya terlebih dahulu dan menerapkan secara massal. LOBs Jika ukuran kolom LOB melebihi ukuran yang ditentukan dalam tugas, AWS DMS memotong data dan mengirimkan peringatan ke file log AWS DMS. Anda dapat meningkatkan kinerja dengan menggunakan mode LOB Terbatas jika ukuran data LOB Anda berada dalam ukuran LOB Terbatas.

  • Mode LOB sebaris - Anda dapat bermigrasi LOBs tanpa memotong data atau memperlambat kinerja tugas Anda dengan mereplikasi baik kecil maupun besar. LOBs Pertama, tentukan nilai untuk InlineLobMaxSize parameter, yang hanya tersedia ketika mode LOB Penuh diatur ke true. Tugas AWS DMS mentransfer LOBs inline kecil, yang lebih efisien. Kemudian, AWS DMS memigrasikan yang besar LOBs dengan melakukan pencarian dari tabel sumber. Namun, mode LOB Inline hanya berfungsi selama fase beban penuh.

Menghasilkan nilai urutan

Perlu diingat bahwa selama proses pengambilan data perubahan dengan AWS DMS, nomor urutan tambahan tidak direplikasi dari database sumber. Untuk menghindari perbedaan dalam nilai urutan, Anda harus menghasilkan nilai urutan terbaru dari sumber untuk semua urutan, dan menerapkannya ke database Amazon RDS for Oracle target.

Manajemen kredensi

Untuk membantu mengamankan sumber daya AWS Anda, sebaiknya ikuti praktik terbaik AWS Identity and Access Management (IAM).

Epik

TugasDeskripsiKeterampilan yang dibutuhkan

Unduh templat .

Unduh CloudFormation template AWS DMS_Instance.yaml untuk menyediakan instans replikasi AWS DMS serta titik akhir sumber dan targetnya.

Administrator awan, DBA

Mulai pembuatan tumpukan.

  1. Di AWS Management Console, pilih CloudFormation.

  2. Pilih Buat tumpukan.

  3. Untuk Tentukan templat, pilih Unggah file templat.

  4. Pilih Pilih file.

  5. Pilih DMS_instance.yaml file.

  6. Pilih Berikutnya.

Administrator awan, DBA

Tentukan parameternya.

  1. Untuk nama Stack, masukkan nama tumpukan Anda.

  2. Di bawah Parameter Instans AWS DMS, masukkan parameter berikut:

    • DMSInstanceJenis — Pilih instans yang diperlukan untuk instans replikasi AWS DMS, berdasarkan kebutuhan bisnis Anda.

    • DMSStorageUkuran — Masukkan ukuran penyimpanan untuk instans AWS DMS, berdasarkan ukuran migrasi Anda.

  3. Di bawah Source Oracle Database Configuration, masukkan parameter berikut:

    • SourceOracleEndpointID — Nama server database Oracle sumber

    • SourceOracleDatabaseName— Nama layanan database sumber atau ID sesi (SID) sebagaimana berlaku

    • SourceOracleUserName— Nama pengguna database sumber (defaultnya adalah sistem)

    • SourceOracleDBPassword— Kata sandi nama pengguna basis data sumber

    • SourceOracleDBPort— Port basis data sumber

  4. Di bawah Target RDS untuk Oracle Database Configuration, masukkan parameter berikut:

    • Target RDSOracle EndpointID - Titik akhir basis data RDS target

    • Target RDSOracle DatabaseName - Nama basis data RDS target

    • Target RSOracle UserName - Nama pengguna RDS target

    • Target RDSOracle DBPassword - Kata sandi RDS target

    • TargetOracleDBPort— Target port database RDS

  5. Di bawah VPC, Subnet dan Konfigurasi Grup Keamanan, masukkan parameter berikut:

    • VPCID — VPC untuk contoh replikasi

    • VPCSecurityGroupId— Grup keamanan VPC untuk contoh replikasi

    • DMSSubnet1— Subnet untuk Availability Zone 1

    • DMSSubnet2— Subnet untuk Availability Zone 2

  6. Pilih Berikutnya.

Administrator awan, DBA

Buat tumpukan.

  1. Pada halaman Configure stack options, untuk Tags, masukkan nilai opsional apa pun.

  2. Pilih Berikutnya.

  3. Pada halaman Ulasan, verifikasi detailnya, lalu pilih Kirim.

Penyediaan harus selesai dalam waktu sekitar 5-10 menit. Ini selesai ketika halaman AWS CloudFormation Stacks menampilkan CREATE_COMPLETE.

Administrator awan, DBA

Siapkan titik akhir.

  1. Dari AWS Management Console, pilih Layanan Migrasi Database.

  2. Di bawah Manajemen sumber daya, pilih Instance replikasi.

  3. Di bawah Manajemen sumber daya, pilih Endpoint.

Administrator awan, DBA

Uji konektivitas.

Setelah titik akhir sumber dan target menunjukkan status sebagai Aktif, uji konektivitas. Pilih Jalankan pengujian untuk setiap titik akhir (sumber dan target) untuk memastikan status ditampilkan sebagai berhasil.

Administrator awan, DBA
TugasDeskripsiKeterampilan yang dibutuhkan

Hasilkan SCN.

Ketika database sumber aktif dan digunakan oleh aplikasi, memulai ekspor data dengan Oracle Data Pump. Anda harus terlebih dahulu menghasilkan nomor perubahan sistem (SCN) dari database sumber untuk konsistensi data selama ekspor dengan Oracle Data Pump dan sebagai titik awal untuk mengubah pengambilan data di AWS DMS.

Untuk menghasilkan SCN saat ini dari database sumber Anda, masukkan pernyataan SQL berikut.

SQL> select name from v$database; SQL> select name from v$database; NAME --------- PSFTDMO SQL> SELECT current_scn FROM v$database; CURRENT_SCN ----------- 23792008

Simpan SCN yang dihasilkan untuk digunakan saat Anda mengekspor data dan untuk membuat tugas replikasi AWS DMS.

DBA

Buat file parameter.

Untuk membuat file parameter untuk mengekspor skema, Anda dapat menggunakan kode berikut.

$ cat exp_datapmp.par userid=system/******* directory=DATA_PUMP_DIR logfile=export_dms_sample_user.log dumpfile=export_dms_sample_data_%U.dmp schemas=SYSADM flashback_scn=23792008
catatan

Anda juga dapat menentukan sendiri DATA_PUMP_DIR dengan menggunakan perintah berikut, berdasarkan kebutuhan Anda.

SQL> CREATE OR REPLACE DIRECTORY DATA_PUMP_DIR AS '/opt/oracle/product/19c/dbhome_1/dmsdump/'; Directory created. SQL> GRANT READ, WRITE ON DIRECTORY DATA_PUMP_DIR TO system; Grant succeeded. SQL> SQL> SELECT owner, directory_name, directory_path FROM dba_directories WHERE directory_name='DATA_PUMP_DIR'; OWNER DIRECTORY_NAME DIRECTORY_PATH ------------------------------------------------------------------------------------------------------------------ SYS DATA_PUMP_DIR /opt/oracle/product/19c/dbhome_1/dmsdump/
DBA

Ekspor skema.

Untuk melakukan ekspor, gunakan expdp utilitas.

$ expdp parfile=exp_datapmp.par ....................... Transferring the dump file with DBMS_FILE_TRANSFER to Target: . . exported "SYSADM"."PS_XML_TEMPLT_LNG" 6.320 KB 0 rows . . exported "SYSADM"."PS_XML_TEMPLT_LNK" 6.328 KB 0 rows . . exported "SYSADM"."PS_XML_XLATDEF_LNG" 6.320 KB 0 rows . . exported "SYSADM"."PS_XML_XLATITM_LNG" 7.171 KB 0 rows . . exported "SYSADM"."PS_XPQRYRUNCNTL" 7.601 KB 0 rows . . exported "SYSADM"."PS_XPQRYRUNPARM" 7.210 KB 0 rows . . exported "SYSADM"."PS_YE_AMOUNTS" 9.351 KB 0 rows . . exported "SYSADM"."PS_YE_DATA" 16.58 KB 0 rows . . exported "SYSADM"."PS_YE_EE" 6.75 KB 0 rows . . exported "SYSADM"."PS_YE_W2CP_AMOUNTS" 9.414 KB 0 rows . . exported "SYSADM"."PS_YE_W2CP_DATA" 20.94 KB 0 rows . . exported "SYSADM"."PS_YE_W2C_AMOUNTS" 10.27 KB 0 rows . . exported "SYSADM"."PS_YE_W2C_DATA" 20.95 KB 0 rows . . exported "SYSADM"."PS_ZBD_JOBCODE_TBL" 14.60 KB 0 rows . . exported "SYSADM"."PTGRANTTBL" 5.468 KB 0 rows Master table "SYSTEM"."SYS_EXPORT_SCHEMA_01" successfully loaded/unloaded ** Dump file set for SYSTEM.SYS_EXPORT_SCHEMA_01 is: /opt/oracle/product/19c/dbhome_1/dmsdump/export_dms_sample_data_01.dmp Job "SYSTEM"."SYS_EXPORT_SCHEMA_01" successfully completed at Mon Dec 19 20:13:57 2022 elapsed 0 00:38:22
DBA
TugasDeskripsiKeterampilan yang dibutuhkan

Transfer file dump ke instance target.

Untuk mentransfer file Anda menggunakanDBMS_FILE_TRANSFER, Anda perlu membuat link database dari database sumber ke Amazon RDS for Oracle instance. Setelah tautan dibuat, Anda dapat menggunakan utilitas untuk mentransfer file Pompa Data langsung ke instance RDS.

Atau, Anda dapat mentransfer file Pompa Data ke Amazon Simple Storage Service (Amazon S3) dan kemudian mengimpornya ke instans Amazon RDS for Oracle. Untuk informasi selengkapnya tentang opsi ini, lihat bagian Informasi tambahan.

Untuk membuat tautan database ORARDSDB yang terhubung ke pengguna master Amazon RDS pada instans DB target, jalankan perintah berikut pada database sumber.

$sqlplus / as sysdba $ SQL> create database link orardsdb connect to admin identified by "*****" using '(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = testpsft.*******.us-west-2.rds.amazonaws.com)(PORT = 1521))(CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = orcl)))'; Database link created.
DBA

Uji tautan basis data.

Uji tautan database untuk memastikan bahwa Anda dapat terhubung menggunakan sqlplus ke database target Amazon RDS for Oracle.

SQL> SQL> select name from v$database@orardsdb; NAME --------- ORCL SQL>
DBA

Transfer file dump ke database target.

Untuk menyalin file dump ke Amazon RDS for Oracle database, Anda dapat menggunakan direktori DATA_PUMP_DIR default atau Anda dapat membuat direktori Anda sendiri menggunakan kode berikut.

exec rdsadmin.rdsadmin_util.create_directory(p_directory_name => ‘TARGET_PUMP_DIR’);

Script berikut menyalin file dump bernama export_dms_sample_data_01.dmp dari instance sumber ke target Amazon RDS for Oracle database menggunakan link database bernama. orardsdb

$ sqlplus / as sysdba SQL> BEGIN DBMS_FILE_TRANSFER.PUT_FILE( source_directory_object => 'DATA_PUMP_DIR', source_file_name => 'export_dms_sample_data_01.dmp', destination_directory_object => 'TARGET_PUMP_DIR’', destination_file_name => 'export_dms_sample_data_01.dmp', destination_database => 'orardsdb' ); END; / PL/SQL procedure successfully completed.
DBA

Buat daftar file dump dalam database target.

Setelah PL/SQL prosedur selesai, Anda dapat mencantumkan file dump data di database Amazon RDS for Oracle dengan menggunakan kode berikut.

SQL> select * from table (rdsadmin.rds_file_util.listdir(p_directory => ‘TARGET_PUMP_DIR’));
DBA

Memulai impor pada database target.

Sebelum memulai proses impor, atur peran, skema, dan ruang tabel pada database Amazon RDS for Oracle target menggunakan file dump data.

Untuk melakukan impor, akses database target dengan akun pengguna master Amazon RDS, dan gunakan nama string koneksi dalam tnsnames.ora file, yang mencakup Amazon RDS for Oracle Database. tns-entry Jika perlu, Anda dapat menyertakan opsi remap untuk mengimpor file dump data ke ruang tabel yang berbeda atau di bawah nama skema yang berbeda.

Untuk memulai impor, gunakan kode berikut.

impdp admin@orardsdb directory=TARGET_PUMP_DIR logfile=import.log dumpfile=export_dms_sample_data_01.dmp

Untuk memastikan impor berhasil, periksa file log impor untuk kesalahan apa pun, dan tinjau detail seperti jumlah objek, jumlah baris, dan objek yang tidak valid. Jika ada objek yang tidak valid, kompilasi ulang. Selain itu, bandingkan objek basis data sumber dan target untuk mengonfirmasi bahwa mereka cocok.

DBA
TugasDeskripsiKeterampilan yang dibutuhkan

Buat tugas replikasi.

Buat tugas replikasi AWS DMS dengan menggunakan langkah-langkah berikut:

  1. Di konsol AWS DMS, di bawah Konversi & migrasi, pilih tugas migrasi database.

  2. Di bawah Konfigurasi tugas, untuk pengenal Tugas, masukkan pengenal tugas Anda.

  3. Untuk contoh Replikasi, pilih contoh replikasi DMS yang Anda buat.

  4. Untuk titik akhir basis data Sumber, pilih titik akhir sumber Anda.

  5. Untuk titik akhir database Target, pilih database Amazon RDS for Oracle target Anda.

  6. Untuk jenis Migrasi, pilih Replikasi perubahan data saja. Jika Anda menerima pesan bahwa pencatatan tambahan perlu diaktifkan, ikuti petunjuk di bagian Informasi tambahan.

  7. Di bawah Pengaturan tugas, pilih Tentukan nomor urutan log.

  8. Untuk nomor perubahan Sistem, masukkan SCN database Oracle yang Anda hasilkan dari database Oracle sumber.

  9. Pilih Aktifkan validasi.

  10. Pilih Aktifkan CloudWatch Log.

    Dengan mengaktifkan fitur ini, Anda dapat memvalidasi data dan CloudWatch log Amazon untuk meninjau log instans replikasi AWS DMS.

  11. Di bawah aturan Seleksi, lengkapi yang berikut ini:

    • Untuk Skema, pilih Masukkan skema.

    • Untuk nama Skema, masukkan SYSADM.

    • Untuk nama Tabel, masukkan%.

    • Untuk Tindakan, pilih Sertakan.

  12. Di bawah aturan Transformasi, lengkapi yang berikut ini:

    • Untuk Target, pilih Tabel.

    • Untuk nama Skema, pilih Masukkan skema.

    • Untuk nama Skema, masukkan SYSADM.

    • Untuk Tindakan, pilih Ganti nama menjadi.

  13. Pilih Buat tugas.

Setelah Anda membuat tugas, tugas tersebut akan memigrasikan CDC ke instance database Amazon RDS for Oracle dari SCN yang Anda berikan dalam mode mulai CDC. Anda juga dapat memverifikasi dengan meninjau CloudWatch log.

Administrator awan, DBA
TugasDeskripsiKeterampilan yang dibutuhkan

Validasi transfer data.

Setelah tugas AWS DMS dimulai, Anda dapat memeriksa tab Statistik tabel di halaman Tugas untuk melihat perubahan yang dibuat pada data.

Anda dapat memantau status replikasi yang sedang berlangsung di konsol pada halaman tugas migrasi database.

Untuk informasi selengkapnya, lihat validasi data AWS DMS.

Administrator awan, DBA
TugasDeskripsiKeterampilan yang dibutuhkan

Hentikan replikasi.

Hentikan prosedur replikasi dan hentikan layanan aplikasi sumber.

Administrator awan, DBA

Luncurkan tingkat PeopleSoft menengah.

Luncurkan aplikasi tingkat PeopleSoft menengah target di AWS, dan arahkan ke database Amazon RDS for Oracle yang baru saja dimigrasikan.

Saat Anda mengakses aplikasi, Anda harus memperhatikan bahwa semua koneksi aplikasi sekarang dibuat dengan database Amazon RDS for Oracle.

DBA, administrator PeopleSoft

Matikan database sumber.

Setelah Anda mengonfirmasi bahwa tidak ada lagi koneksi ke database sumber, itu dapat dimatikan.

DBA

Sumber daya terkait

Informasi tambahan

Transfer file menggunakan Amazon S3

Untuk mentransfer file ke Amazon S3, Anda dapat menggunakan AWS CLI atau konsol Amazon S3. Setelah mentransfer file ke Amazon S3, Anda dapat menggunakan instans Amazon RDS for Oracle untuk mengimpor file Pompa Data dari Amazon S3.

Jika Anda memilih untuk mentransfer file dump menggunakan integrasi Amazon S3 sebagai metode alternatif, lakukan langkah-langkah berikut:

  1. Buat ember S3.

  2. Ekspor data dari database sumber menggunakan Oracle Data Pump.

  3. Unggah file Pompa Data ke bucket S3.

  4. Unduh file Pompa Data dari bucket S3 ke database Amazon RDS for Oracle target.

  5. Lakukan impor menggunakan file Pompa Data.

catatan

Untuk mentransfer file data besar antara instans S3 dan RDS, disarankan untuk menggunakan fitur Amazon S3 Transfer Acceleration.

Aktifkan pencatatan tambahan

Jika Anda menerima pesan peringatan untuk mengaktifkan pencatatan tambahan di database sumber untuk replikasi yang sedang berlangsung, gunakan langkah-langkah berikut.

SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (FOREIGN KEY) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE) COLUMNS;