Memahami pengaturan konversi Oracle ke Postgre SQL - AWS Layanan Migrasi Database

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

Memahami pengaturan konversi Oracle ke Postgre SQL

Pengaturan SQL konversi Oracle ke Postgre dalam Konversi DMS Skema meliputi yang berikut:

  • AWS DMS dapat mengonversi tampilan terwujud Oracle menjadi tabel atau tampilan terwujud di Postgre. SQL Untuk tampilan Terwujud, pilih cara mengonversi tampilan terwujud sumber Anda.

  • Database Oracle sumber Anda dapat menggunakan ROWID pseudocolumn. Postgre SQL tidak mendukung fungsionalitas serupa. DMSKonversi Skema dapat meniru ROWID pseudocolumn dalam kode yang dikonversi menggunakan tipe data atau. bigint character varying Untuk melakukannya, pilih Gunakan tipe data bigint untuk meniru ROWID pseudocolumn atau Gunakan tipe data yang bervariasi karakter untuk meniru pseudocolumn untuk Row ID. ROWID

    Jika kode Oracle sumber Anda tidak menggunakan ROWID pseudocolumn, pilih Jangan buat. Dalam hal ini, kode yang dikonversi bekerja lebih cepat.

  • Kode Oracle sumber Anda dapat menyertakanTO_CHAR,TO_DATE, dan TO_NUMBER fungsi dengan parameter yang SQL tidak didukung Postgre. Secara default, Konversi DMS Skema mengemulasi penggunaan parameter ini dalam kode yang dikonversi.

    Anda dapat menggunakan Postgre asli SQLTO_CHAR,TO_DATE, dan TO_NUMBER fungsi ketika kode Oracle sumber Anda tidak memiliki parameter yang tidak didukung oleh Postgre. SQL Dalam hal ini, kode yang dikonversi bekerja lebih cepat. Untuk melakukannya, pilih nilai berikut:

    • Gunakan fungsi Postgre TO_ SQL asli CHAR

    • Gunakan fungsi Postgre TO_ SQL asli DATE

    • Gunakan fungsi Postgre TO_ SQL asli NUMBER

  • Database dan aplikasi Anda dapat berjalan di zona waktu yang berbeda. Secara default, Konversi DMS Skema mengemulasi zona waktu dalam kode yang dikonversi. Namun, Anda tidak memerlukan emulasi ini ketika database dan aplikasi Anda menggunakan zona waktu yang sama. Dalam hal ini, pilih Tingkatkan kinerja kode yang dikonversi di mana database dan aplikasi menggunakan zona waktu yang sama.

  • Untuk terus menggunakan urutan dalam kode yang dikonversi, pilih Isi urutan yang dikonversi dengan nilai terakhir yang dihasilkan di sisi sumber.

  • Dalam beberapa kasus, database Oracle sumber Anda mungkin hanya menyimpan nilai integer di kolom kunci primer atau asing dari tipe NUMBER data. Dalam kasus ini, AWS DMS dapat mengkonversi kolom ini ke tipe BIGINT data. Pendekatan ini meningkatkan kinerja kode Anda yang dikonversi. Untuk melakukannya, pilih Mengkonversi kolom kunci primer dan asing dari tipe NUMBER data ke tipe BIGINT data. Pastikan sumber Anda tidak menyertakan nilai floating point di kolom ini untuk menghindari kehilangan data.

  • Untuk melewati pemicu dan kendala yang dinonaktifkan dalam kode sumber Anda, pilih Konversi hanya pemicu dan kendala aktif.

  • Anda dapat menggunakan Konversi DMS Skema untuk mengonversi variabel string yang disebut dinamisSQL. Kode database Anda dapat mengubah nilai variabel string ini. Untuk memastikan bahwa AWS DMS selalu mengonversi nilai terbaru dari variabel string ini, pilih Konversi SQL kode dinamis yang dibuat dalam rutinitas yang disebut.

  • Postgre SQL versi 10 dan sebelumnya tidak mendukung prosedur. Jika Anda tidak terbiasa menggunakan prosedur di PostgreSQL, AWS DMS dapat mengonversi prosedur Oracle ke fungsi Postgre. SQL Untuk melakukannya, pilih Konversi prosedur ke fungsi.

  • Untuk melihat informasi tambahan tentang item tindakan yang terjadi, Anda dapat menambahkan fungsi tertentu ke paket ekstensi. Untuk melakukannya, pilih Tambahkan fungsi paket ekstensi yang meningkatkan pengecualian yang ditentukan pengguna. Kemudian pilih tingkat keparahan untuk meningkatkan pengecualian yang ditentukan pengguna. Pastikan Anda menerapkan skema paket ekstensi setelah mengonversi objek basis data sumber Anda. Untuk informasi selengkapnya tentang paket ekstensi, lihatMenggunakan paket ekstensi.

  • Database Oracle sumber Anda dapat menyertakan batasan dengan nama yang dibuat secara otomatis. Jika kode sumber Anda menggunakan nama-nama ini, pastikan Anda memilih Simpan nama kendala yang dihasilkan sistem. Jika kode sumber Anda menggunakan batasan ini, tetapi tidak menggunakan namanya, hapus opsi ini untuk meningkatkan kecepatan konversi.

  • Jika basis data sumber dan target Anda berjalan di zona waktu yang berbeda, fungsi yang mengemulasi fungsi Oracle SYSDATE bawaan mengembalikan nilai yang berbeda dibandingkan dengan fungsi sumber. Untuk memastikan bahwa fungsi sumber dan target Anda mengembalikan nilai yang sama, pilih Tetapkan zona waktu database sumber Anda.

  • Anda dapat menggunakan fungsi dari ekstensi orafce dalam kode yang dikonversi. Untuk melakukannya, untuk rutinitas bawaan Orafce, pilih fungsi yang akan digunakan. Untuk informasi lebih lanjut tentang orafce, lihat orafce di. GitHub