Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Managed Instance
A Database Mail egy vállalati megoldás, amely e-maileket küld az SQL Server Adatbázismotorból vagy a felügyelt Azure SQL-példányból. Az alkalmazások e-maileket küldhetnek a felhasználóknak a Database Mail használatával egy külső SMTP-kiszolgálón keresztül. Az üzenetek tartalmazhatnak lekérdezési eredményeket, és a hálózat bármely erőforrásából származó fájlokat is tartalmazhatnak.
Megjegyzés:
A Database Mail az SQL Server Adatbázismotorban és a felügyelt Azure SQL-példányban érhető el, de az Azure SQL Database-ben és a rugalmas készletekben nem. További információ a Database Mail felügyelt Azure SQL-példányban való használatáról: Felügyeleti feladatok automatizálása SQL Agent-feladatok használatával a felügyelt Azure SQL-példányban.
A Database Mail használatának előnyei
A Database Mail a megbízhatóságra, a méretezhetőségre, a biztonságra és a támogatottságra szolgál.
Megbízhatóság
A Database Mail a szabványos Simple Mail Transfer Protocol (SMTP) protokollt használja a levelek küldésére. A Database Mail alkalmazást anélkül használhatja, hogy kiterjesztett MAPI-ügyfelet telepítene az SQL Servert futtató számítógépre.
Folyamatelkülönítés. Az SQL Serverre gyakorolt hatás minimalizálása érdekében az e-maileket kézbesítő összetevő az SQL Serveren kívül, külön folyamaton belül fut. Az SQL Server akkor is várólistára küldi az e-maileket, ha a külső folyamat leáll vagy meghiúsul. Az üzenetsorba helyezett üzeneteket a rendszer a külső folyamat vagy az SMTP-kiszolgáló online állapotba helyezése után küldi el.
Feladatátvételi fiókok. A Database Mail-profilokkal több SMTP-kiszolgálót is megadhat. Ha egy SMTP-kiszolgáló nem érhető el, a levelek továbbra is kézbesíthetők egy másik SMTP-kiszolgálóra.
Cluster támogatás. A Database Mail fürtérzékeny, és teljes mértékben támogatott egy fürtön.
Skálázhatóság
Háttérkézbesítés: Az Adatbázisposta háttérszolgáltatást vagy aszinkron kézbesítést biztosít. Amikor ön üzenetet küld
sp_send_dbmail, a Database Mail egy kérést ad hozzá egy Service Broker sorhoz. A tárolt eljárás azonnal eredményt ad. A külső e-mail összetevő megkapja a kérést, és kézbesíti az e-mailt.Több profil: A Database Mail lehetővé teszi több profil létrehozását egy SQL Server-példányon belül. Tetszés szerint kiválaszthatja azt a profilt, amelyet a Database Mail használ az üzenet küldésekor.
Több fiók: Minden profil több feladatátvevő fiókot tartalmazhat. Különböző profilokat konfigurálhat különböző fiókokkal, hogy az e-maileket több e-mail-kiszolgálón is eloszthassa.
64 bites kompatibilitás: A Database Mail teljes mértékben támogatott az SQL Server 64 bites telepítéseinél.
Biztonság
Alapértelmezés szerint kikapcsolva: Az SQL Server felületének csökkentése érdekében alapértelmezés szerint a Database Mail tárolt eljárásai le vannak tiltva.
- A Database Mail konfigurálásához a sysadmin rögzített kiszolgálói szerepkör tagjának kell lennie.
Levelezés biztonsága: A Database Mail küldéséhez a DatabaseMailUserRole adatbázis-szerepkör tagjának kell lennie az
msdbadatbázisban.Profilbiztonság: A Database Mail a levelezési profilok biztonságát kényszeríti ki. Kiválaszthatja azokat az
msdbadatbázis-felhasználókat vagy csoportokat, amelyek hozzáféréssel rendelkeznek adatbázis-levelezési profilhoz. Hozzáférést adhat adott felhasználóknak, vagy az összes felhasználónak.msdbA privát profilok a felhasználók megadott listájához való hozzáférést korlátozzák. Egy nyilvános profil az adatbázis összes felhasználója számára elérhető.Mellékletméret-vezérlő: A Database Mail konfigurálható korlátot kényszerít a mellékletfájl méretére. Ezt a korlátot a sysmail_configure_sp tárolt eljárással módosíthatja.
Tiltott fájlkiterjesztések: A Database Mail megőrzi a tiltott fájlkiterjesztések listáját. A felhasználók nem csatolhatnak a listában megjelenő kiterjesztésű fájlokat. Ezt a listát sysmail_configure_sp használatával módosíthatja.
A Database Mail az SQL Server Engine szolgáltatásfiókja alatt fut. Ha egy mappából származó fájlt e-mailhez szeretne csatolni, az SQL Server-motorfióknak engedélyekkel kell rendelkeznie ahhoz, hogy hozzáférjen a fájllal rendelkező mappához.
Támogatottság
Integrált konfiguráció: A Database Mail az SQL Server Adatbázismotoron belül tartja fenn az e-mail fiókok adatait. Nincs szükség levelezési profil kezelésére egy külső ügyfélalkalmazásban. Az Adatbázisposta konfigurációs varázsló kényelmes felületet biztosít a Database Mail konfigurálásához. Database Mail-konfigurációkat a Transact-SQL használatával is létrehozhat és kezelhet.
Fakitermelés. A Database Mail naplózza az SQL Serverre, a Microsoft Windows alkalmazás eseménynaplójába és az
msdbadatbázisban lévő táblákra irányuló e-mail-tevékenységeket.Naplózás: A Database Mail megőrzi az adatbázisban küldött üzenetek és mellékletek másolatait
msdb. Könnyedén naplózhatja a Database Mail használatát, és áttekintheti a megtartott üzeneteket.HTML-támogatás: A Database Mail lehetővé teszi, hogy HTML formátumú e-maileket küldjön.
Adatbázis levelezési architektúrája
A Database Mail szolgáltatásközvetítő technológiákat használó, üzenetsoros architektúrára készült. Amikor a felhasználók végrehajtják sp_send_dbmail, a tárolt eljárás beszúr egy elemet az üzenetsorba, és létrehoz egy rekordot, amely tartalmazza az e-mail üzenetet. Az új bejegyzés beszúrása a levelezési üzenetsorba elindítja a külső adatbázis levelezési folyamatát (DatabaseMail.exe). A külső folyamat beolvassa az e-mail adatokat, és elküldi az e-mail üzenetet a megfelelő e-mail kiszolgálónak vagy kiszolgálóknak. A külső folyamat beszúr egy elemet az Állapotsorba a küldési művelet eredményéhez. Az új bejegyzésnek az állapotsorba való beszúrása elindít egy belső tárolt eljárást, amely frissíti az e-mail állapotát. Az elküldött vagy nem küldött e-mailek tárolása mellett a Database Mail a rendszertáblákban lévő e-mail mellékleteket is rögzíti. A Database Mail-nézetek biztosítják a hibaelhárításhoz szükséges üzenetek állapotát, a tárolt eljárások pedig lehetővé teszik az Adatbázisposta-üzenetsor felügyeletét.
A Database Mail összetevőinek bemutatása
A Database Mail a következő fő összetevőkből áll:
Konfigurációs és biztonsági összetevők
A Database Mail az adatbázisban tárolja a
msdbkonfigurációs és biztonsági információkat. A konfigurációs és biztonsági objektumok profilokat és fiókokat hoznak létre, amelyeket a Database Mail használ.Üzenetkezelési összetevők
Az
msdbadatbázis a Database Mail által az e-mailek küldéséhez használt üzenetkezelési objektumokat tartalmazó levelezési gazdaadatbázisként működik. Ezek az objektumok magukban foglalják asp_send_dbmailtárolt eljárást és az üzenetekkel kapcsolatos információkat tároló adatstruktúrákat.Végrehajtható adatbázis-levelezés
Az Adatbázisposta végrehajtható fájl egy külső alkalmazás, amely az
msdbadatbázis üzenetsorát olvassa, és üzeneteket küld e-mail szerverekre.Naplózási és auditálási összetevők
A Database Mail az adatbázisban és a Microsoft Windows alkalmazás eseménynaplójában rögzíti a
msdbnaplózási adatokat.
Az SQL Agent konfigurálása a Database Mail használatára
Az SQL Server-ügynök konfigurálható a Database Mail használatára. Ez szükséges a riasztási értesítésekhez és az automatikus értesítéshez, amikor egy feladat befejeződik.
Figyelmeztetés
A feladaton belüli egyes feladatlépések is küldhetnek e-maileket anélkül, hogy konfigurálták az SQL Server Agentet a Database Mail használatára. Egy Transact-SQL feladatlépés például a Database Mail használatával küldheti el a lekérdezés eredményeit a címzettek listájára.
Az SQL Server-ügynök konfigurálható úgy, hogy e-maileket küldjön előre definiált operátoroknak, ha:
A rendszer riasztást indít el. A riasztások úgy konfigurálhatók, hogy e-mailben értesítést küldjenek az adott eseményekről. A riasztások például úgy konfigurálhatók, hogy értesítsék az operátort egy adott adatbáziseseményről vagy operációsrendszer-feltételről, amely azonnali beavatkozást igényelhet. A riasztások konfigurálásáról további információt a Riasztások című témakörben talál.
Egy ütemezett feladat, például egy adatbázis biztonsági mentése vagy replikációs eseménye sikeres vagy sikertelen. Az SQL Server Agent Mail használatával például értesítheti az operátorokat, ha egy hónap végén a feldolgozás során hiba történik.
Az SQL Agent Database Mail használatára való konfigurálásának első lépéseit az SQL Server Agent levelezésének konfigurálása a Database Mail használatára című témakörben talál.
Adatbázis levelezés tartalmazott rendelkezésre állási csoportokkal
Ha zártkörű rendelkezésre állási csoportokkal szeretné használni az Adatbázis-levelezést, csatlakoznia kell a példányhoz, és engedélyeznie kell a Database Mail XPs (kiszolgálókonfigurációs beállítás) használatát a sp_configure rendszerrel tárolt eljárás segítségével. Ezt a lépést a foglalt rendelkezésre állási csoport összes replikáján végre kell hajtani.
- Ha megkísérli engedélyezni az
sp_configureopciót az adatbázisposta számára, amikor csatlakozik a tartalmazott elérhetőségi csoport figyelőjéhez, a várt hibaüzenet jelenik meg: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)
Miután engedélyezte a Database Mail XPs beállítást az összes replikán, csatlakozzon a tartalmazott rendelkezésre állási csoport figyelőjéhez, hogy folytathassa az adatbázis levélküldési konfigurációjának beállítását a Konfiguráció kiválasztása feladatban leírtak szerint. Ez biztosítja, hogy az adatbázis levelezési objektumai a foglalt rendelkezésre állási csoportban legyenek, és szinkronizálva maradjanak.
TDS 8.0-támogatás
Az SQL Server 2025 (17.x) bevezette a TDS 8.0 támogatását a Database Mailhez. A TDS 8.0 protokoll fokozott biztonságot és titkosítást biztosít az SQL Server és az ügyfélalkalmazások között továbbított adatokhoz. Ez lehetővé teszi a Database Mail használatát olyan környezetekben, ahol a TLS 1.3 titkosítás és a TDS 8.0 kényszerítve van.
Hibaelhárítás
A Database Mail hibaelhárításához látogasson el a következő címre:
- Database Mail-problémák elhárítása
- Adatbázis e-mailjeinek általános hibaelhárítási lépései
- Adatbázis e-mailjei: A levelek várólistára kerülnek, nem kézbesítve
- Adatbázis-levelezési gyakori hibái