Memigrasikan database Oracle ke Cloud SQL untuk PostgreSQL

Halaman ini menjelaskan cara mengonversi database Oracle ke sintaksis PostgreSQL dan memigrasikan data ke Cloud SQL untuk PostgreSQL dengan Database Migration Service.

Proses migrasi melibatkan tugas berikut:

  1. Mengonfigurasi database sumber untuk konektivitas migrasi dan menyiapkan data untuk konversi ke PostgreSQL.

  2. Membuat instance Cloud SQL for PostgreSQL tujuan.

  3. Mengonversi skema Oracle dan objek lainnya ke sintaksis PostgreSQL dengan ruang kerja konversi Database Migration Service.

  4. Membuat dan menjalankan tugas migrasi di Database Migration Service.

  5. Memantau progres tugas migrasi dengan fitur kejelasan Database Migration Service.

  6. Mempromosikan tugas migrasi setelah data dimigrasikan sepenuhnya.

Biaya

Dalam dokumen ini, Anda akan menggunakan komponen yang dapat ditagih berikut dari Google Cloud:

Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda, gunakan kalkulator harga.

Sebelum memulai

  1. Verifikasi apakah jalur migrasi ini dapat sepenuhnya mendukung skenario Anda. Lihat halaman berikut:
    • Sumber dan tujuan yang didukung di halaman Ringkasan skenario mencantumkan semua versi sumber dan tujuan yang didukung.
    • Batasan umum menjelaskan jenis data yang didukung, ukuran database, dan batasan lainnya.
    • Ringkasan jaringan menjelaskan solusi konektivitas jaringan yang tersedia.

      Untuk memigrasikan data Anda, Database Migration Service perlu membuat koneksi jaringan ke instance sumber dan tujuan Anda. Bergantung pada arsitektur Anda, Anda mungkin memerlukan persiapan tambahan untuk memfasilitasi konektivitas jaringan.

  2. Pertimbangkan region tempat Anda ingin membuat database tujuan. Database Migration Service adalah produk yang sepenuhnya regional, yang berarti semua entitas yang terkait dengan migrasi Anda (profil koneksi sumber dan tujuan, tugas migrasi, database tujuan, ruang kerja konversi) harus disimpan dalam satu region.
  3. Di Google Cloud konsol, pada halaman pemilih project, pilih atau buat Google Cloud project.

    Buka pemilih project

  4. Aktifkan Database Migration Service, Compute Engine, Cloud Storage, dan Cloud SQL Admin API.

    Aktifkan API

Peran yang diperlukan

Untuk mendapatkan izin yang Anda perlukan untuk melakukan migrasi Oracle heterogen dengan Database Migration Service, minta administrator Anda untuk memberi Anda peran IAM yang diperlukan di project Anda:

Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses dalam dokumentasi Identity and Access Management.

Peran bawaan ini berisi izin yang diperlukan untuk melakukan migrasi Oracle heterogen dengan Database Migration Service. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk melakukan migrasi Oracle heterogen dengan Database Migration Service:

  • datamigration.*
  • cloudaicompanion.entitlements.get

    Izin ini disertakan dalam peran roles/datamigration.admin. Fitur ini diperlukan untuk fitur konversi yang disempurnakan Gemini.

  • cloudsql.instances.create
  • cloudsql.instances.get
  • cloudsql.instances.list
  • cloudsql.instances.update
  • cloudsql.instances.delete
  • cloudsql.operations.get
  • cloudsql.users.list
  • cloudsql.users.get
  • cloudsql.users.create
  • cloudsql.users.update
  • cloudsql.users.delete

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Langkah 1. Menyiapkan database sumber

Untuk menyiapkan data sumber Anda untuk migrasi, ikuti langkah-langkah berikut:

  1. Siapkan konektivitas database sumber. Lakukan tindakan berikut:
    1. Opsional: Pertimbangkan apakah Anda ingin menggunakan sertifikat SSL/TLS untuk mengamankan koneksi jaringan sumber. Untuk mengetahui informasi selengkapnya, lihat Mengamankan koneksi jaringan dengan TLS.

      Enkripsi SSL/TLS didukung untuk Oracle versi 12 dan yang lebih baru. Database Migration Service hanya mendukung metode enkripsi TLS. Bergantung pada konfigurasi SSL/TLS, Anda mungkin perlu melakukan langkah-langkah konfigurasi tambahan pada database sumber.

    2. Pilih dan konfigurasikan metode konektivitas jaringan sumber Anda.
  2. Konfigurasi instance database sumber Anda.

    Pada langkah ini, Anda akan membuat akun pengguna database migrasi khusus dan mengaktifkan fitur replikasi yang diperlukan.

  3. Opsional: Mengoptimalkan konfigurasi file log Anda.

    Mengakses file log yang diarsipkan secara inheren akan menambahkan beberapa latensi pada proses migrasi. Anda dapat menyesuaikan setelan file log tertentu untuk mengontrol dampak latensi.

  4. Buat profil koneksi sumber.

    Profil koneksi berisi informasi yang diperlukan agar Database Migration Service dapat membuat koneksi ke database sumber Anda. Detail koneksi bervariasi bergantung pada metode konektivitas jaringan sumber yang Anda gunakan.

Langkah 2. Siapkan instance tujuan Cloud SQL untuk PostgreSQL

Untuk mengonfigurasi instance Cloud SQL tujuan Anda, lakukan langkah-langkah berikut:

  1. Pilih dan konfigurasi metode konektivitas jaringan tujuan Anda.
  2. Buat dan konfigurasi instance tujuan Cloud SQL untuk PostgreSQL Anda.

    Pastikan Anda menggunakan resource komputasi dan memori yang cukup untuk memenuhi kebutuhan migrasi Anda. Untuk mengetahui informasi selengkapnya, lihat Rekomendasi migrasi.

  3. Buat profil koneksi tujuan.

    Profil koneksi berisi informasi yang diperlukan agar Database Migration Service dapat membuat koneksi ke database tujuan Anda. Detail koneksi bervariasi bergantung pada metode konektivitas jaringan tujuan yang Anda gunakan.

Langkah 3. Mengonversi objek Oracle ke sintaksis PostgreSQL

Database sering kali memiliki ribuan objek. Mengonversi semuanya dalam satu sesi mungkin merupakan proses yang sulit. Dengan ruang kerja konversi, Anda dapat membagi proses konversi menjadi beberapa fase tempat Anda menambahkan objek baru ke konversi, memperbaiki masalah, lalu mengujinya di database tujuan.

Untuk mengonversi objek dari database sumber, lakukan tindakan berikut:

  1. Buat ruang kerja konversi dan jalankan konversi awal.
  2. Perbaiki masalah konversi dan terapkan skema ke database tujuan Anda.

Langkah 4. Membuat dan menjalankan tugas migrasi

Untuk mengonfigurasi dan menjalankan migrasi, lakukan langkah-langkah berikut:

  1. Opsional: Jika Anda ingin mengelola sertifikat Anda sendiri untuk tugas migrasi, siapkan kunci enkripsi yang diperlukan.
  2. Opsional: Jika Anda ingin melakukan fase dump penuh sendiri, Anda dapat mengekspor semua data dari database sumber Oracle dan memuatnya ke instance Cloud SQL for PostgreSQL tujuan di luar Database Migration Service.

    Jika Anda memutuskan untuk melakukan dump penuh di luar alur tugas migrasi, pastikan Anda mencatat Nomor Perubahan Sistem (SCN) tempat Database Migration Service harus memulai replikasi CDC.

  3. Buat dan jalankan tugas migrasi.

    Database Cloud SQL tujuan dapat ditulis selama migrasi untuk memungkinkan perubahan DML diterapkan jika diperlukan. Berhati-hatilah agar tidak membuat perubahan pada konfigurasi database atau struktur tabel yang dapat mengganggu proses migrasi atau memengaruhi integritas data.

    Anda dapat memantau progres migrasi, serta kondisi instance tujuan dengan fitur kejelasan Database Migration Service. Lihat Metrik tugas migrasi.

Langkah 5. Menyelesaikan migrasi

Saat Anda memutuskan untuk mengalihkan aplikasi ke instance Cloud SQL untuk PostgreSQL yang baru, selesaikan migrasi dengan mengikuti langkah-langkah berikut:

  1. Hentikan semua operasi tulis di database sumber Anda. Anda dapat mengalihkannya ke mode hanya baca untuk mempertahankan fungsi operasional.
  2. Opsional: Verifikasi kelengkapan data migrasi.
  3. Mempromosikan tugas migrasi.

Sekarang Anda dapat menghapus semua entitas Layanan Migrasi Database seperti profil koneksi, tugas migrasi, dan ruang kerja konversi. Anda juga dapat memilih untuk mempertahankan dan menggunakan kembali entitas ini untuk migrasi lain.

Langkah berikutnya

Pelajari lebih lanjut Google Cloud fitur Cloud SQL untuk PostgreSQL. Lihat Fitur Cloud SQL untuk PostgreSQL.