Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk: SQL Server
Azure SQL Managed Instance
Email Database adalah solusi perusahaan untuk mengirim pesan email dari SQL Server Database Engine atau Azure SQL Managed Instance. Aplikasi Anda dapat mengirim pesan email kepada pengguna menggunakan Email Database melalui server SMTP eksternal. Pesan dapat berisi hasil kueri, dan juga dapat menyertakan file dari sumber daya apa pun di jaringan Anda.
Catatan
Database Mail tersedia di SQL Server Database Engine dan Azure SQL Managed Instance, tetapi tidak di Azure SQL Database dan elastic pools. Untuk informasi selengkapnya tentang menggunakan Email Database di Azure SQL Managed Instance, lihat Mengotomatiskan tugas manajemen menggunakan pekerjaan SQL Agent di Azure SQL Managed Instance.
Manfaat menggunakan Email Database
Email Database dirancang untuk keandalan, skalabilitas, keamanan, dan dukungan.
Keandalan
Email Database menggunakan Simple Mail Transfer Protocol (SMTP) standar untuk mengirim email. Anda dapat menggunakan Email Database tanpa menginstal klien EXTENDED MAPI di komputer yang menjalankan SQL Server.
Isolasi proses. Untuk meminimalkan dampak pada SQL Server, komponen yang mengirimkan email berjalan di luar SQL Server, dalam proses terpisah. SQL Server akan terus mengantre pesan email meskipun proses eksternal berhenti atau gagal. Pesan-pesan yang diantrekan akan dikirim saat proses eksternal atau server SMTP sudah online.
Akun cadangan. Profil Email Database memungkinkan Anda menentukan lebih dari satu server SMTP. Jika server SMTP tidak tersedia, email masih dapat dikirimkan ke server SMTP lain.
Dukungan kluster. Database Mail mendukung lingkungan kluster dan sepenuhnya kompatibel pada kluster.
Skalabilitas
Pengiriman Latar Belakang: Database Mail menyediakan pengiriman latar belakang atau asinkron. Saat Anda memanggil
sp_send_dbmailuntuk mengirim pesan, Database Mail menambahkan permintaan ke antrean Service Broker. Prosedur tersimpan segera kembali. Komponen email eksternal menerima permintaan dan mengirimkan email.Beberapa profil: Email Database memungkinkan Anda membuat beberapa profil dalam instans SQL Server. Secara opsional, Anda bisa memilih profil yang digunakan Email Database saat mengirim pesan.
Beberapa akun: Setiap profil dapat berisi beberapa akun failover. Anda dapat mengonfigurasi profil yang berbeda dengan akun yang berbeda untuk mendistribusikan email di beberapa server email.
Kompatibilitas 64-bit: Email Database didukung penuh pada penginstalan SQL Server 64-bit.
Keamanan
Nonaktif secara default: Untuk mengurangi area permukaan SQL Server, prosedur tersimpan Database Mail dinonaktifkan secara default.
- Untuk mengonfigurasi Database Mail, Anda harus menjadi anggota peran server tetap sysadmin.
Keamanan Email: Untuk mengirim Email Database, Anda harus menjadi anggota peran database DatabaseMailUserRole dalam
msdbdatabase.Keamanan profil: Email Database memberlakukan keamanan untuk profil email. Anda memilih
msdbpengguna atau grup database yang memiliki akses ke profil Email Database. Anda dapat memberikan akses ke pengguna tertentu, atau semua pengguna dimsdb. Profil privat membatasi akses ke daftar pengguna tertentu. Profil publik tersedia untuk semua pengguna dalam database.Gubernur ukuran lampiran: Database Mail memberlakukan batas yang dapat dikonfigurasi pada ukuran file lampiran. Anda dapat mengubah batas ini dengan menggunakan prosedur tersimpan sysmail_configure_sp.
Ekstensi file yang dilarang: Database Mail mempertahankan daftar ekstensi file yang dilarang. Pengguna tidak dapat melampirkan file dengan ekstensi yang muncul dalam daftar. Anda dapat mengubah daftar ini dengan menggunakan sysmail_configure_sp.
Email Database berjalan di bawah akun layanan SQL Server Engine. Untuk melampirkan file dari folder ke email, akun mesin SQL Server harus memiliki izin untuk mengakses folder dengan file.
Dukungan
Konfigurasi terintegrasi: Email Database menyimpan informasi untuk akun email dalam SQL Server Database Engine. Tidak perlu mengelola profil email di aplikasi klien eksternal. Wizard Konfigurasi Email Database menyediakan antarmuka yang nyaman untuk mengonfigurasi Email Database. Anda juga dapat membuat dan memelihara konfigurasi Email Database menggunakan Transact-SQL.
Pengelogan. E-mail Database Mail mencatat aktivitas email ke SQL Server, log peristiwa Aplikasi Microsoft Windows, dan ke tabel dalam database
msdb.Pengauditan: Mail Database menyimpan salinan pesan dan lampiran yang dikirim di dalam basis data
msdb. Anda dapat dengan mudah mengaudit penggunaan Email Database dan meninjau pesan yang dipertahankan.Dukungan untuk HTML: Email Database memungkinkan Anda mengirim email yang diformat sebagai HTML.
Arsitektur email database
Database Mail dirancang pada arsitektur antrean yang menggunakan teknologi broker layanan. Saat pengguna menjalankan sp_send_dbmail, prosedur tersimpan menyisipkan item ke dalam antrean email dan membuat rekaman yang berisi pesan email. Menyisipkan entri baru dalam antrean email memulai proses Email Database eksternal (DatabaseMail.exe). Proses eksternal membaca informasi email dan mengirim pesan email ke server atau server email yang sesuai. Proses eksternal menyisipkan item dalam antrian Status untuk hasil dari operasi pengiriman. Menyisipkan entri baru dalam antrean status memulai prosedur tersimpan internal yang memperbarui status pesan email. Selain menyimpan pesan email yang dikirim, atau tidak dikirim, Email Database juga merekam lampiran email apa pun dalam tabel sistem. Tampilan Email Database menyediakan status pesan untuk pemecahan masalah, dan prosedur tersimpan memungkinkan administrasi antrean Email Database.
Pengantar Komponen Database Mail
Email Database terdiri dari komponen utama berikut:
Komponen konfigurasi dan keamanan
Database Mail menyimpan informasi konfigurasi dan keamanan dalam
msdbdatabase. Objek konfigurasi dan keamanan membuat profil dan akun yang digunakan oleh Database Mail.Komponen olahpesan
Database
msdbbertindak sebagai database host email yang menyimpan objek olahpesan yang digunakan Database Mail untuk mengirim email. Objek-objek ini termasuksp_send_dbmailprosedur tersimpan dan struktur data yang menyimpan informasi tentang pesan.Eksekutabel Database Mail
Database Mail executable adalah program eksternal yang membaca dari antrean dalam
msdbdatabase dan mengirim pesan ke server email.Komponen pengelogan dan audit
Database Mail merekam informasi pengelogan
msdbdalam database dan log peristiwa Aplikasi Microsoft Windows.
Mengonfigurasi SQL Server Agent untuk menggunakan Database Mail
SQL Server Agent dapat dikonfigurasi untuk menggunakan Email Database. Ini diperlukan untuk pemberitahuan dan pemberitahuan otomatis saat tugas selesai.
Peringatan
Langkah-langkah pekerjaan individual dalam pekerjaan juga dapat mengirim email tanpa mengonfigurasi SQL Server Agent untuk menggunakan Email Database. Misalnya, langkah pekerjaan Transact-SQL dapat menggunakan Email Database untuk mengirim hasil kueri ke daftar penerima.
Anda dapat mengonfigurasi SQL Server Agent untuk mengirim pesan email ke operator yang telah ditentukan sebelumnya saat:
Peringatan dipicu. Pemberitahuan dapat dikonfigurasi untuk mengirim pemberitahuan email tentang peristiwa tertentu yang terjadi. Misalnya, pemberitahuan dapat dikonfigurasi untuk memberi tahu operator tentang peristiwa database atau kondisi sistem operasi tertentu yang mungkin memerlukan tindakan segera. Untuk informasi selengkapnya tentang mengonfigurasi pemberitahuan, lihat Pemberitahuan.
Tugas terjadwal, seperti pencadangan database atau peristiwa replikasi, berhasil atau gagal. Misalnya, Anda dapat menggunakan SQL Server Agent Mail untuk memberi tahu operator jika terjadi kesalahan selama pemrosesan pada akhir bulan.
Untuk mulai mengonfigurasi Agen SQL untuk menggunakan Email Database, lihat Mengonfigurasi email SQL Server Agent untuk menggunakan Email Database.
Mail basis data dengan grup ketersediaan terkonten
Untuk menggunakan Database Mail dengan grup ketersediaan yang dibatasi, Anda harus terhubung ke instance dan mengaktifkan Database Mail XPs (opsi konfigurasi server) menggunakan prosedur tersimpan sistem sp_configure. Langkah ini harus diselesaikan pada semua replika dalam grup ketersediaan yang terkandung.
- Jika Anda mencoba mengaktifkan opsi email database
sp_configuresaat terhubung dengan listener grup ketersediaan tertutup, Anda akan menerima kesalahan yang diharapkan:Changes to server configuration options are not permitted in the connection to Contained Availability Group. Change connection to SQL Server instance level and retry the operation. (Microsoft SQL Server, Error: 5874)
Setelah mengaktifkan Database Mail XPs opsi pada semua replika, sambungkan ke pendengar grup ketersediaan yang terkandung untuk melanjutkan konfigurasi email database, seperti yang dijelaskan dalam Pilih Tugas Konfigurasi. Ini akan memastikan objek email database ada dalam grup ketersediaan yang terkandung dan tetap disinkronkan.
Dukungan TDS 8.0
SQL Server 2025 (17.x) memperkenalkan dukungan TDS 8.0 untuk Email Database. Protokol TDS 8.0 menyediakan keamanan dan enkripsi yang ditingkatkan untuk data yang dikirimkan antara SQL Server dan aplikasi klien. Ini memungkinkan Database Mail untuk bekerja di lingkungan tempat enkripsi TLS 1.3 dan TDS 8.0 diberlakukan.
Troubleshoot
Untuk memecahkan masalah Email Database, kunjungi:
- Memecahkan masalah Email Database
- Langkah-langkah pemecahan masalah email database umum
- Email database: Email diantrekan, tidak terkirim
- Kesalahan umum dengan email database