راه اندازی Database Mail در SQL Server با استفاده از Gmail

راه اندازی Database Mail در SQL Server با استفاده از Gmail

نوشته شده توسط: حسن سلیمانی
۲۷ فروردین ۱۴۰۲
زمان مطالعه: 8 دقیقه
۴.۱
(۱۰)

در این مقاله قصد ما این است که با Database Mail آشنا شده و بتوانیم عملیات ارسال ایمیل در SQL Server را انجام دهیم. ما از یک اکانت Gmail استفاده خواهیم کرد. برای انجام راه اندازی Database Mail در SQL Server مراحل زیر را دنبال نمایید.

دوره نگهداری از بانک های اطلاعاتی نیک آموز

SP_CONFIGURE

در مرحله­‌ی اول، با استفاده از Query زیر، وضعیت سرویس Database Mail را برای Instance جاری بررسی نمایید. مقدار این فیلد باید ۱ باشد.

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

در صورتی که مقدار برابر ۰ بود، با استفاده از Query زیر، مقدار آن را با ۱ تغییر دهید.

SP_CONFIGURE 'Database Mail XPs', 1
RECONFIGURE

پیکربندی ایمیل پایگاه داده (Configure Database Mail)

  • مرحله ۱: ابتدا باید Database Mail را برای Instance مورد نظر Config کرد.

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

  • مرحله ۲: اگر برای اولین بار است که Database Mail را Config می­‌کنید، گزینه اول را انتخاب نمایید.

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

  • مرحله ۳: یک نام برای Profile وارد نمایید و کلید Add را بزنید تا برای Profile جاری Account اضافه کنید.

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

  • مرحله ۴: تمامی موارد را مانند تصویر زیر با یک Mail مشخص وارد نمایید.

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

در جدول زیر، اطلاعات SMTP برای mail های مشهور آورده شده است.

Mail Service SMTP Server Port Number
Hotmail smtp.live.com ۵۸۷
Gmail smtp.gmail.com ۵۸۷
Outlook smtp.office365.com ۵۸۷
Yahoo smtp.mail.yahoo.com ۵۸۷
AOL smtp.aol.com ۵۸۷
  • مرحله ۵: در این مرحله باید یک Profile default انتخاب نمایید.

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

  • مرحله ۶: تمامی موارد صفحات بعد را پذیرفته و  Finish را بزنید.

تنظیمات (Gmail Setting Less secure app access)

برای اینکه Sql بتواند از Gmail شما برای ارسال mail استفاده نماید، باید تنظیمات زیر را برای Gmail Account انجام دهید.

  • مرحله ۱:

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

  • مرحله ۲:

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

  • مرحله ۳: این گزینه باید فعال باشد.

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

بررسی کردن (Test Database Mail)

در ادامه فرآیند راه اندازی Database Mail در SQL Server پس از انجام مراحل بالا، یک بار سیستم ایمیل را مانند تصاویر زیر چک کنید.

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

راه‌اندازی Database Mail در SQL Server با استفاده از Gmail

اگر ایمیل تستی با موفقیت ارسال شد، شما می‌­توانید از این Profile برای مواردی مثل Job استفاده نمایید.

ارسال ایمیل با دستور (Send Mail with Script)

برای ارسال ایمیل با دستور، می­‌توانید از دستور زیر کمک بگیرید.

USE msdb
GO

sp_send_dbmail [ [ @profile_name = ] 'HassanMailProfile' ]  
    [ , [ @recipients = ] 'recipients [ ; ...n ]' ]  
    [ , [ @copy_recipients = ] 'copy_recipient [ ; ...n ]' ]  
    [ , [ @blind_copy_recipients = ] 'blind_copy_recipient [ ; ...n ]' ]  
    [ , [ @from_address = ] 'from_address' ]  
    [ , [ @reply_to = ] 'reply_to' ]   
    [ , [ @subject = ] 'subject' ]   
    [ , [ @body = ] 'body' ]   
    [ , [ @body_format = ] 'body_format' ]  
    [ , [ @importance = ] 'importance' ]  
    [ , [ @sensitivity = ] 'sensitivity' ]  
    [ , [ @file_attachments = ] 'attachment [ ; ...n ]' ]  
    [ , [ @query = ] 'query' ]  
    [ , [ @execute_query_database = ] 'execute_query_database' ]  
    [ , [ @attach_query_result_as_file = ] attach_query_result_as_file ]  
    [ , [ @query_attachment_filename = ] query_attachment_filename ]  
    [ , [ @query_result_header = ] query_result_header ]  
    [ , [ @query_result_width = ] query_result_width ]  
    [ , [ @query_result_separator = ] 'query_result_separator' ]  
    [ , [ @exclude_query_output = ] exclude_query_output ]  
    [ , [ @append_query_error = ] append_query_error ]  
    [ , [ @query_no_truncate = ] query_no_truncate ]   
    [ , [ @query_result_no_padding = ] @query_result_no_padding ]   
    [ , [ @mailitem_id = ] mailitem_id ] [ OUTPUT ]

Example

EXEC msdb..sp_send_dbmail @profile_name='HassanMailProfile',
@recipients='f_malekshah@yahoo.com',
@subject='Backup Northwind',
@body='Backup was successful.....'

Mail DMV

با استفاده از ویوهای زیر می‌توانید اطلاعات بیشتری در خصوص ایمیل‌های ارسال شده و همچنین ایمیل‌هایی که هنوز ارسال نشده و یا Fail شده‌اند، به‌دست آورید.

SELECT * FROM msdb..sysmail_sentitems

SELECT * FROM msdb..sysmail_unsentitems
SELECT * FROM msdb..sysmail_faileditems

 

 

چه رتبه ای می‌دهید؟

میانگین ۴.۱ / ۵. از مجموع ۱۰

اولین نفر باش

title sign
برچسب ها
title sign
دانلود مقاله
راه اندازی Database Mail در SQL Server با استفاده از Gmail
فرمت PDF
11 صفحه
حجم 1 مگابایت
دانلود مقاله
title sign
معرفی نویسنده
حسن سلیمانی
مقالات
7 مقاله توسط این نویسنده
محصولات
0 دوره توسط این نویسنده
حسن سلیمانی
پروفایل نویسنده
title sign
دیدگاه کاربران

ثبت نام رایگان در همایش Tehran .NET Conf 2023 ، همین الان کلیک کنید
ثبت نام رایگان..
close-image