Memigrasikan beban kerja Oracle ke AlloyDB untuk PostgreSQL menggunakan Database Migration Service

Panduan memulai ini menunjukkan cara menggunakan Database Migration Service untuk memigrasikan beban kerja Oracle ke AlloyDB untuk PostgreSQL. Resource yang dibuat dalam panduan memulai ini biasanya berharga kurang dari satu dolar (USD), dengan asumsi bahwa Anda menyelesaikan langkah-langkahnya, termasuk pembersihannya, secara tepat waktu.

Sebelum memulai

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Make sure that billing is enabled for your Google Cloud project.

  6. Enable the Database Migration Service API.

    Enable the API

  7. Pastikan Anda memiliki peran Admin Migrasi Database yang ditetapkan ke akun pengguna Anda.

    Buka halaman IAM

Persyaratan

Database Migration Service menawarkan berbagai opsi database sumber, opsi database tujuan, dan metode konektivitas. Sumber dan tujuan yang berbeda akan berfungsi lebih baik dengan beberapa metode konektivitas dibandingkan dengan yang lain.

Dalam panduan memulai ini, kami mengasumsikan bahwa Anda:

  • Gunakan database Oracle mandiri di lingkungan tempat Anda dapat mengonfigurasi jaringan untuk menambahkan aturan firewall masuk. Database sumber dapat berada di lokal atau di penyedia cloud. Karena kami tidak dapat mengetahui secara spesifik lingkungan Anda, kami tidak dapat memberikan langkah-langkah mendetail mengenai konfigurasi jaringan Anda.

  • Ingin memigrasikan workload Oracle ke database AlloyDB untuk PostgreSQL tujuan.

  • Gunakan metode konektivitas IP Pribadi. Jenis konektivitas ini mengharuskan Anda membuat konfigurasi konektivitas pribadi untuk database tujuan AlloyDB untuk PostgreSQL.

Membuat profil koneksi

Dengan membuat profil koneksi, Anda membuat data yang berisi informasi tentang database sumber dan tujuan. Database Migration Service menggunakan informasi dalam profil koneksi untuk memigrasikan data dari database Oracle sumber ke instance database AlloyDB untuk PostgreSQL tujuan.

Di bagian ini, Anda akan mempelajari cara membuat profil koneksi untuk:

  • Database Oracle sumber
  • Database AlloyDB untuk PostgreSQL tujuan

Membuat profil koneksi Oracle

  1. Buka halaman Profil koneksi Database Migration Service di konsol Google Cloud .

    Buka Halaman Profil Koneksi Layanan Migrasi Database

  2. Klik BUAT PROFIL.

  3. Di halaman Buat profil koneksi, dari daftar Profile role, pilih Source.

  4. Dari daftar Mesin database, pilih Oracle.

  5. Berikan informasi berikut:

    1. Di kolom Nama profil koneksi, masukkan nama profil koneksi untuk database Oracle sumber Anda, seperti My Oracle Connection Profile.

    2. Simpan ID profil koneksi yang dibuat secara otomatis.

    3. Pilih Region tempat profil koneksi disimpan.

    4. Masukkan alamat Nama host atau IP (domain atau IP) dan Port untuk mengakses database Oracle sumber. (Port Oracle default adalah 1521.)

    5. Masukkan Username dan Password untuk mengautentikasi ke database sumber Anda.

    6. Di kolom Nama layanan, masukkan layanan yang memastikan database Oracle sumber dilindungi dan dipantau. Untuk database Oracle, layanan database biasanya adalah ORCL.

  6. Klik Lanjutkan.

  7. Di bagian Secure your connection, klik Continue.

  8. Dari daftar Metode konektivitas, pilih metode konektivitas jaringan. Metode ini menentukan cara Database Migration Service akan terhubung ke database Oracle sumber.

    Untuk panduan memulai ini, pilih Daftar IP yang diizinkan sebagai metode jaringan.

  9. Klik Run test untuk memverifikasi bahwa Database Migration Service dapat berkomunikasi dengan sumber.

    Jika gagal, pengujian akan menunjukkan bagian proses mana yang mengalami masalah. Perubahan yang diperlukan dapat dilakukan, lalu diuji ulang di halaman Buat profil koneksi.

    Buka bagian alur yang dimaksud untuk memperbaiki masalah, lalu uji ulang.

  10. Klik Create.

Membuat profil koneksi tujuan

  1. Buka halaman Profil koneksi Database Migration Service di konsol Google Cloud .

    Buka Halaman Profil Koneksi Layanan Migrasi Database

  2. Klik Buat profil.

  3. Di halaman Create a connection profile, dari daftar Profile role, pilih Destination.

  4. Dari daftar Database engine, pilih AlloyDB for PostgreSQL.

  5. Berikan informasi berikut:

    1. Di kolom Nama profil koneksi, masukkan nama profil koneksi untuk database AlloyDB untuk PostgreSQL tujuan Anda, seperti My AlloyDB for PostgreSQL Connection Profile.

    2. Simpan ID profil koneksi yang dibuat secara otomatis.

    3. Pilih Region tempat profil koneksi disimpan.

    4. Pilih cluster AlloyDB untuk PostgreSQL yang ingin Anda gunakan sebagai database tujuan migrasi.

    5. Masukkan alamat Hostname or IP (domain atau IP) dan Port untuk mengakses database tujuan. (Port AlloyDB untuk PostgreSQL default adalah 5432.)

    6. Masukkan Username dan Password untuk mengautentikasi ke database tujuan Anda.

  6. Klik Lanjutkan.

  7. Di bagian Secure your connection, klik Continue.

  8. Di menu Metode konektivitas, pilih metode konektivitas IP Pribadi.

    Metode konektivitas menentukan cara Database Migration Service terhubung ke database AlloyDB untuk PostgreSQL tujuan. IP pribadi mengharuskan Anda membuat konfigurasi konektivitas pribadi terlebih dahulu.

  9. Klik Run test untuk memverifikasi bahwa Database Migration Service dapat berkomunikasi dengan database tujuan.

    Jika gagal, pengujian akan menunjukkan bagian proses mana yang mengalami masalah. Perubahan yang diperlukan dapat dilakukan, lalu diuji ulang di halaman Buat profil koneksi.

    Buka bagian alur yang dimaksud untuk memperbaiki masalah, lalu uji ulang.

  10. Klik Create.

Membuat ruang kerja konversi

Ruang kerja konversi membantu Anda mengonversi skema dan objek dari database sumber ke dalam format yang kompatibel dengan database tujuan. Konversi ini memungkinkan Database Migration Service memigrasikan data Anda antara database sumber dan target.

Buat ruang kerja konversi dengan melakukan hal berikut:

  • Menentukan setelan untuk ruang kerja konversi.
  • Hubungkan ke database sumber dan tarik informasi skema Anda ke Layanan Migrasi Database.
  • Lakukan konversi otomatis dengan penyesuaian opsional menggunakan:

    • Editor ruang kerja konversi—ruang editor aktif tempat Anda dapat mengubah SQL yang digunakan untuk konversi
    • File konfigurasi Ora2Pg untuk memberikan pemetaan konversi tambahan
  • Menerapkan skema yang dikonversi ke database tujuan: Database Migration Service menggunakan SQL yang dihasilkan untuk membuat semua entitas yang diperlukan di database tujuan untuk membantu memastikan bahwa data migrasi dapat dimuat dengan benar ke database.

Menentukan setelan untuk ruang kerja konversi

  1. Buka halaman ruang kerja Konversi Database Migration Service di Konsol Google Cloud .

    Buka Halaman Ruang Kerja Konversi Database Migration Service

  2. Klik Buat ruang kerja.

  3. Berikan informasi berikut:

    1. Di kolom Nama ruang kerja konversi, masukkan nama untuk ruang kerja konversi, seperti My Conversion Workspace.

    2. Pertahankan ID ruang kerja konversi yang dibuat secara otomatis.

    3. Pilih Region tempat ruang kerja konversi disimpan.

    4. Daftar Mesin database sumber otomatis diisi dengan Oracle.

    5. Dari daftar Destination database engine, pilih AlloyDB for PostgreSQL.

  4. Tinjau prasyarat yang diperlukan yang dibuat secara otomatis guna mencerminkan cara lingkungan harus disiapkan untuk ruang kerja konversi. Prasyarat ini mencakup cara:

  5. Klik Buat ruang kerja dan lanjutkan.

Menghubungkan ke sumber dan mengonversi objek

  1. Buka daftar Source connection profile, lalu pilih profil koneksi yang Anda buat.

  2. Klik Run test untuk memverifikasi bahwa Database Migration Service dapat berkomunikasi dengan sumber.

    Jika gagal, pengujian akan menunjukkan bagian proses mana yang mengalami masalah. Perubahan yang diperlukan dapat dilakukan, lalu diuji ulang.

    Buka bagian alur yang dimaksud untuk memperbaiki masalah, lalu uji ulang.

  3. Klik Pull schema and continue.

    Database Migration Service mulai terhubung ke database sumber Anda untuk mendownload informasi skema. Operasi ini dapat memerlukan waktu beberapa menit, bergantung pada faktor seperti konektivitas jaringan atau ukuran database.

    Setelah Database Migration Service selesai mengambil informasi skema, bagian Pilih dan konversi objek akan terbuka.

  4. Gunakan tampilan hierarki skema untuk memilih semua entitas yang ingin dikonversi Database Migration Service menjadi skema yang kompatibel dengan mesin SQL database tujuan Anda.

  5. Klik Konversikan dan lanjutkan.

    Database Migration Service membuat ruang kerja konversi dan melakukan konversi skema. Sekarang Anda dapat melihat pratinjau SQL yang dibuat secara otomatis di editor ruang kerja konversi.

Menerapkan ke tujuan

Saat skema yang ingin Anda gunakan di database tujuan dikonversi, gunakan opsi Terapkan ke tujuan untuk menjalankan pernyataan SQL yang dihasilkan di database tujuan:

  1. Klik Terapkan ke tujuan, lalu pilih salah satu opsi berikut:

    • Uji (direkomendasikan): Operasi ini menjalankan pengujian untuk memverifikasi apakah skema Anda berhasil dibuat di database tujuan.
    • Terapkan: Operasi ini mencoba membuat skema yang dikonversi di database tujuan.
  2. Di bagian Define destination, pilih profil koneksi yang mengarah ke database tujuan Anda.

  3. Klik Tentukan dan lanjutkan.

  4. Di bagian Tinjau objek dan terapkan konversi ke tujuan, pilih skema entity database yang ingin Anda buat di database tujuan.

  5. Klik Terapkan ke tujuan.

Membuat tugas migrasi

Database Migration Service menggunakan tugas migrasi untuk memigrasikan data dari instance database sumber ke instance database AlloyDB untuk PostgreSQL tujuan.

Membuat tugas migrasi mencakup:

  • Menentukan setelan untuk tugas
  • Menentukan informasi tentang profil koneksi yang Anda buat untuk database sumber (profil koneksi sumber)
  • Menentukan informasi tentang profil koneksi yang Anda buat untuk database tujuan (profil koneksi tujuan)
  • Mengonfigurasi objek yang ingin Anda migrasikan dari database sumber
  • Menguji tugas migrasi untuk memastikan informasi koneksi yang Anda berikan untuk tugas tersebut valid

Menentukan setelan untuk tugas migrasi

  1. Buka halaman Tugas migrasi Database Migration Service di konsol Google Cloud .

    Buka Halaman Tugas Migrasi Database Migration Service

  2. Klik Buat tugas migrasi.

  3. Pada kolom Nama tugas migrasi, masukkan nama untuk tugas migrasi, seperti My Migration Job.

  4. Simpan ID tugas migrasi yang dibuat secara otomatis.

  5. Dari menu Mesin database sumber, pilih Oracle.

  6. Dari menu Destination database engine, pilih AlloyDB for PostgreSQL.

  7. Pilih Region tempat instance tujuan akan dibuat.

  8. Tinjau prasyarat yang diperlukan yang dibuat secara otomatis guna mencerminkan cara lingkungan harus disiapkan untuk tugas migrasi. Prasyarat ini dapat mencakup cara mengonfigurasi database sumber dan cara menghubungkannya ke instance database AlloyDB untuk PostgreSQL tujuan. Sebaiknya Anda menyelesaikan prasyarat tersebut pada langkah ini, tetapi Anda dapat menyelesaikannya kapan saja sebelum menguji tugas migrasi atau memulainya. Untuk informasi selengkapnya tentang prasyarat ini, lihat Mengonfigurasi database Oracle sumber.

  9. Klik Simpan dan lanjutkan.

Menentukan setelan sumber

Di halaman Tentukan sumber Anda, lakukan hal berikut:

  1. Dari daftar Source connection profile, pilih profil koneksi sumber untuk instance Oracle Anda.
  2. Klik Simpan dan lanjutkan.
  3. (Opsional) Di bagian Test connection profile, klik Run test untuk memeriksa apakah Database Migration Service dapat membuat koneksi jaringan ke instance sumber Anda.

    Anda dapat membuat tugas migrasi meskipun pengujian koneksi gagal, tetapi Anda harus memperbaiki masalah konektivitas sebelum menjalankan tugas migrasi.

  4. Di bagian Customize source configuration, konfigurasikan setelan berikut:
    • Di bagian Full dump configuration, pilih Automatic.
    • Di Setelan baca sumber, gunakan default serentak yang disarankan.
  5. Klik Simpan dan lanjutkan.

Menentukan setelan tujuan

Di halaman Tentukan tujuan Anda, lakukan hal berikut:

  1. Dari daftar Destination connection profile, pilih profil koneksi tujuan.
  2. Klik Simpan dan lanjutkan.
  3. (Opsional) Di bagian Test connection profile, klik Run test untuk memeriksa apakah Database Migration Service dapat membuat koneksi jaringan ke tujuan Anda.

    Anda dapat membuat tugas migrasi meskipun pengujian koneksi gagal, tetapi Anda harus memperbaiki masalah konektivitas sebelum menjalankan tugas migrasi.

  4. Di bagian Customize destination configuration, konfigurasikan setelan berikut:
    • Di bagian Maximum concurrent destination connections, gunakan default konkurensi yang disarankan.
    • Di bagian Waktu tunggu transaksi, gunakan default waktu tunggu yang disarankan.
  5. Klik Simpan dan lanjutkan.

Memilih objek yang akan dimigrasikan

  1. Pilih ruang kerja konversi Anda dari daftar Conversion workspace.

    Setelah Anda memilih ruang kerja konversi, wilayah Select objects to migrate di halaman akan mencantumkan semua objek (skema dan tabel) dari database sumber Oracle yang dapat dimigrasikan ke tujuan.

  2. Pilih objek database dari daftar yang ingin Anda migrasikan dengan Database Migration Service.

  3. Klik Simpan dan lanjutkan.

Menguji dan membuat tugas migrasi

  1. Tinjau setelan yang Anda pilih untuk tugas migrasi.

  2. Klik Uji tugas untuk memverifikasi bahwa:

    • Sumber telah dikonfigurasi berdasarkan prasyarat.

    • Database Migration Service dapat terhubung ke sumber.

    • Database Migration Service dapat terhubung ke tujuan.

    • Tugas migrasi valid, dan versi sumber dan tujuan kompatibel.

    Jika pengujian gagal, Anda dapat mengatasi masalah tersebut di bagian alur yang sesuai, dan kembali untuk menguji ulang.

  3. Klik Buat dan mulai tugas untuk membuat tugas migrasi dan langsung memulainya.

  4. Klik Create and start di kotak dialog berikutnya.

  5. Di halaman Tugas migrasi, pastikan tugas migrasi Anda berstatus "Dimulai". Setelah beberapa menit, konfirmasi bahwa statusnya berubah menjadi "Running".

Memverifikasi tugas migrasi

Di bagian ini, Anda akan mengonfirmasi bahwa Database Migration Service menggunakan tugas migrasi untuk memigrasikan data dari instance database sumber ke instance database AlloyDB untuk PostgreSQL tujuan.

Memverifikasi menggunakan Alat Validasi Data

Ada Alat Validasi Data open source yang dapat Anda gunakan untuk memvalidasi lebih cermat kecocokan data antara sumber dan tujuan.

Langkah-langkah berikut menunjukkan contoh minimal untuk menjalankan validasi yang lebih akurat:

  1. Men-deploy atau menggunakan virtual machine dengan akses ke sumber dan tujuan.

  2. Di virtual machine, buat folder untuk menginstal Alat Validasi Data.

  3. Buka folder ini.

  4. Gunakan pip untuk menginstal Alat Validasi Data.

    pip install google-pso-data-validator
    
  5. Buat koneksi ke database Oracle sumber dan database AlloyDB untuk PostgreSQL tujuan.

    data-validation connections add -c source Oracle --host 'ip-address' --port port --user username --password pswd --database database-name
    data-validation connections add -c target Postgres --host 'ip-address' --port port --user username --password pswd --database database-name
    

    Contoh:

    data-validation connections add -c source Oracle --host '10.10.10.11' --port 1521 --user system --password pswd --database XE
    data-validation connections add -c target Postgres --host '10.10.10.12' --port 5432 --user postgres --password pswd --database postgres
    
  6. Buat atau buat daftar tabel untuk membandingkan data antara database sumber dan tujuan.

    export TABLES_LIST=$(data-validation find-tables --source-conn target --target-conn target --allowed-schemas schema-name)
    

    Contoh:

    export TABLES_LIST=$(data-validation find-tables --source-conn target --target-conn target --allowed-schemas public)
    
  7. Jalankan validasi penuh terhadap semua tabel.

    data-validation validate column --source-conn source --target-conn target --tables-list "${TABLES_LIST}"
    

Sebaiknya jalankan validasi ini selama replikasi untuk memastikan konsistensi relatif. Kueri tabel besar mungkin memerlukan waktu terlalu lama untuk dijalankan selama periode promosi yang singkat. Dalam kasus tersebut, gunakan Alat Validasi Data untuk menambahkan filter guna mengurangi runtime atau menyiapkan daftar tabel untuk menyertakan subset tabel untuk validasi akhir.

Hal ini mengonfirmasi bahwa Database Migration Service telah memigrasikan data.

Menyelesaikan migrasi

Untuk migrasi berkelanjutan, selesaikan tugas migrasi saat Anda ingin mulai menggunakan cluster tujuan untuk aplikasi.

Anda dapat menggunakan tombol Promote di halaman detail tugas migrasi agar Database Migration Service membersihkan semua data migrasi sementara dan mempromosikan tujuan Anda.

  1. Kembali ke halaman Tugas migrasi.

  2. Klik tugas migrasi yang Anda buat di panduan memulai ini. Ini mewakili migrasi yang ingin Anda selesaikan. Halaman Detail tugas migrasi akan muncul.

  3. Gunakan Alat Validasi Data untuk melacak penundaan replikasi dengan memeriksa jumlah baris.

    Tunggu sampai penundaan replikasi menurun secara signifikan, idealnya dalam hitungan menit atau detik. Penundaan replikasi tersedia untuk ditinjau di halaman Tugas migrasi.

  4. Setelah penundaan replikasi minimal, mulailah peralihan. Untuk menghindari kehilangan data, pastikan untuk:

    1. Hentikan semua operasi tulis, skrip yang berjalan, dan koneksi klien ke database sumber. Periode nonaktif dimulai di sini.

    2. Tunggu hingga penundaan replikasi nol, yang berarti bahwa tugas migrasi telah memproses semua perubahan yang belum terselesaikan.

    Anda dapat menyelesaikan migrasi meskipun penundaan replikasi tidak nol. Hal ini dapat mengurangi periode nonaktif database, tetapi dapat memengaruhi akurasi data di tujuan.

    1. Di halaman detail tugas migrasi, klik Promosikan, lalu konfirmasi tindakan di jendela Promosikan tugas migrasi?.

    Tugas migrasi berhenti membaca dari database sumber Anda. Database Migration Service akan mempromosikan tujuan AlloyDB untuk PostgreSQL guna membersihkan semua data migrasi sementara. Proses ini dapat memerlukan waktu beberapa menit.

  5. Setelah proses promosi selesai, status tugas migrasi akan berubah menjadi Selesai.

  6. Sekarang Anda dapat menghubungkan aplikasi ke instance AlloyDB untuk PostgreSQL tujuan dan menghapus tugas migrasi dengan aman.

Instance database AlloyDB untuk PostgreSQL Anda siap digunakan.

Pembersihan

Agar akun Google Cloud Anda tidak dikenai biaya untuk resource yang digunakan di halaman ini, ikuti langkah-langkah berikut.

  1. Gunakan konsol Google Cloud untuk menghapus tugas migrasi, ruang kerja konversi, profil koneksi, instance AlloyDB untuk PostgreSQL tujuan, dan project jika Anda tidak memerlukannya.

Langkah selanjutnya