Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Oracle UTL_MAIL
Amazon RDS mendukung Oracle UTL_MAIL melalui penggunaan opsi UTL_MAIL dan server SMTP. Anda dapat mengirim email langsung dari basis data Anda menggunakan paket UTL_MAIL. Amazon RDS mendukung UTL_MAIL untuk versi Oracle berikut ini:
Oracle Database 21c (21.0.0.0), semua versi
Oracle Database 19c (19.0.0.0), semua versi
Berikut adalah beberapa batasan dalam menggunakan UTL_MAIL:
-
UTL_MAIL tidak mendukung Keamanan Lapisan Pengangkutan (TLS) dan oleh karena itu email tidak dienkripsi.
Untuk terhubung dengan aman ke SSL/TLS sumber daya jarak jauh dengan membuat dan mengunggah dompet Oracle khusus, ikuti instruksi di. Mengonfigurasi akses UTL_HTTP menggunakan sertifikat dan dompet Oracle
Sertifikat khusus yang diperlukan untuk dompet Anda berbeda menurut layanan. Untuk AWS layanan, ini biasanya dapat ditemukan di repositori layanan kepercayaan Amazon
. -
UTL_MAIL tidak mendukung autentikasi dengan server SMTP.
-
Anda hanya dapat mengirim satu lampiran dalam satu email.
-
Anda tidak dapat mengirim lampiran yang lebih besar dari 32 K.
-
Anda hanya dapat menggunakan pengodean karakter ASCII dan Extended Binary Coded Decimal Interchange Code (EBCDIC).
-
Port SMTP (25) dibatasi berdasarkan kebijakan pemilik antarmuka jaringan elastis.
Saat Anda mengaktifkan UTL_MAIL, hanya pengguna master untuk instans DB Anda yang diberikan hak istimewa eksekusi. Jika perlu, pengguna master dapat memberikan hak eksekusi kepada pengguna lain sehingga mereka dapat menggunakan UTL_MAIL.
penting
Kami menyarankan Anda mengaktifkan fitur audit default Oracle untuk melacak penggunaan prosedur UTL_MAIL.
Prasyarat untuk Oracle UTL_MAIL
Berikut adalah prasyarat untuk menggunakan Oracle UTL_MAIL:
-
Satu server SMTP atau lebih, dan alamat IP yang sesuai atau nama Domain Name Server (DNS) publik atau privat. Untuk informasi lebih lanjut tentang nama DNS privat yang diselesaikan melalui server DNS kustom, lihat Menyiapkan server DNS kustom.
Menambahkan opsi Oracle UTL_MAIL
Proses umum untuk menambahkan opsi UTL_MAIL ke instans DB adalah sebagai berikut:
Buat grup opsi baru, atau salin atau ubah grup opsi yang ada.
Tambahkan opsi ke grup opsi.
Kaitkan grup opsi tersebut dengan instans DB.
Setelah Anda menambahkan opsi UTL_MAIL, setelah grup opsi aktif, UTL_MAIL langsung aktif.
Untuk menambahkan opsi UTL_MAIL ke instans DB
-
Tentukan grup opsi yang ingin Anda gunakan. Anda dapat membuat grup opsi baru atau menggunakan grup opsi yang ada. Jika Anda ingin menggunakan grup opsi yang ada, lanjutkan ke langkah berikutnya. Jika tidak, buat grup opsi DB kustom dengan pengaturan berikut:
-
Untuk Mesin, pilih edisi Oracle yang ingin Anda gunakan.
-
Untuk Versi mesin utama, pilih versi instans DB Anda.
Untuk informasi selengkapnya, lihat Membuat grup opsi.
-
-
Tambahkan opsi UTL_MAIL ke grup opsi. Untuk informasi selengkapnya tentang cara menambahkan opsi, lihat Menambahkan opsi ke grup opsi.
-
Terapkan grup opsi ke instans DB baru atau yang sudah ada:
-
Untuk instans DB baru, Anda menerapkan grup opsi saat Anda meluncurkan instans. Untuk informasi selengkapnya, lihat Membuat instans DB Amazon RDS.
-
Untuk instans DB yang ada, Anda menerapkan grup opsi dengan memodifikasi instans dan melampirkan grup opsi baru. Untuk informasi selengkapnya, lihat Memodifikasi instans DB Amazon RDS.
-
Menggunakan Oracle UTL_MAIL
Setelah Anda mengaktifkan opsi UTL_MAIL, Anda harus mengonfigurasi server SMTP sebelum Anda dapat mulai menggunakannya.
Anda mengonfigurasi server SMTP dengan mengatur parameter SMTP_OUT_SERVER ke alamat IP atau nama DNS publik yang valid. Untuk parameter SMTP_OUT_SERVER, Anda dapat menentukan daftar alamat beberapa server yang dipisahkan koma. Jika server pertama tidak tersedia, UTL_MAIL mencoba server berikutnya, dan seterusnya.
Anda dapat mengatur SMTP_OUT_SERVER default untuk instans DB menggunakan grup parameter DB. Anda dapat mengatur parameter SMTP_OUT_SERVER untuk sebuah sesi dengan menjalankan kode berikut di basis data Anda pada instans DB Anda.
ALTER SESSION SET smtp_out_server =mailserver.domain.com:25;
Setelah opsi UTL_MAIL diaktifkan, dan SMTP_OUT_SERVER Anda dikonfigurasi, Anda dapat mengirim email menggunakan prosedur SEND. Untuk informasi lebih lanjut, lihat UTL_MAIL
Menghapus opsi Oracle UTL_MAIL
Anda dapat menghapus Oracle UTL_MAIL dari instans DB.
Untuk menghapus UTL_MAIL dari instans DB, lakukan salah satu hal berikut:
-
Untuk menghapus UTL_MAIL dari beberapa instans DB, hapus opsi UTL_MAIL dari grup opsi yang mencakupnya. Perubahan ini memengaruhi semua instans DB yang menggunakan grup opsi tersebut. Untuk informasi lebih lanjut, lihat Menghapus opsi dari grup opsi.
-
Untuk menghapus UTL_MAIL dari satu instans DB, modifikasi instans DB dan tentukan grup opsi lain yang tidak menyertakan opsi UTL_MAIL. Anda dapat menentukan grup opsi default (kosong) atau grup opsi kustom yang berbeda. Untuk informasi lebih lanjut, lihat Memodifikasi instans DB Amazon RDS.
Pemecahan masalah
Berikut ini adalah masalah yang mungkin Anda temui saat menggunakan UTL_MAIL dengan Amazon RDS.
-
Throttling. Port SMTP (25) dibatasi berdasarkan kebijakan pemilik antarmuka jaringan elastis. Jika Anda berhasil mengirim email menggunakan UTL_MAIL dan melihat kesalahan
ORA-29278: SMTP transient error: 421 Service not available, Anda mungkin sedang dibatasi. Jika Anda mengalami throttling dengan pengiriman email, sebaiknya Anda menerapkan algoritma backoff. Untuk informasi selengkapnya tentang algoritma backoff, lihat Percobaan ulang kesalahan dan backoff eksponensial di AWS dan Cara menangani kesalahan "throttling - Laju pengiriman maksimum terlampaui". Anda dapat meminta agar throttle ini dihapus. Untuk informasi lebih lanjut, lihat Bagaimana cara menghapus throttle pada port 25 dari instans EC2 saya?
.