SQL Server 2005 Database Mail Özelliği
Merhaba arkadaşlar bu makalede sizlere Sql Server 2005 ile gelen Database Mail özelliğinden bahsedeceğim. Database mailin başlıca birkaç özelliğinden bahsedelim.
1-Birden fazla Smtp Server+Profil+Email hesabı tanımlanabilmektedir.
2-Mailler kuyruk’ta bekletilebilir.
3-Mail trafiğini loglar
4-Sql Mail gibi Outlook ihtiyacı olmadan mail gönderebilir.
Örnek senaryomuzda daha önceden günlük yedek alacak şekilde yaratılmış bir Job için otomatik olarak Fail ve Succeed maili göndereceğiz. Sizler Dts paketleri yaratarak bunların otomatik Export ve İmport işlemleri içinde Database mail uygulamasını yapılandırabilirsiniz.
Sql Server 2005 yüklendikten sonra birçok özelliği gibi Database Mail özelliği de disable halde gelecektir. Surface Area Configuration Tool aracı kullanılarak
Surface Area Configuration For Features tıklanarak
Database Mail seçip sağ tarafta çıkan Enable Database Mail Stored Procedures tıklanarak aktif hale getirebilirsiniz.
Database Mail özelliğini aktif hale getirdikten sonra Sql Server Management Studio aracını açarak Management – Database Mail sağ tıklanarak Configure Database Mail butonuna tıklanır. Burada profil ve hesap tanımlamalarını yapacağız.
Karşımıza birden fazla seçenekli bir ekran gelecektir. İlk seçenek olan “Set Up Database Mail By Performing The Fallowing Tasks” seçilerek
“Next” butonuna tıklıyoruz ve profilimizi oluşturma aşamasına geçiyoruz profilimize bir isim veriyoruz ben backup_error&succeeds yazdım “add” butonuna tıklıyoruz karşımıza gelen ekrandan mail seçiliyor ve yeni bir hesap yaratıyoruz
Gelen ekrandan mail sunucumuz ve mail hesabımızla ilgili bilgileri giriyoruz. Bu ekranı kullanarak database mail profilimiz için bir hesap tanımlıyoruz.
Account name kısmına Sql Desricption kısmına açıklamayı belirtiliyoruz e-mail address sahasına hesap mail adresini yazıyoruz. Server name kısmına mail serverımız ve port numaramız belirtiliyor. Basic Authentication seçilerek kullanıcı adı ve passwordleri belirtiyoruz. burda birden fazla hesap tanımlayabilir, farklı mail serverlar belirtebiliriz.
Next ile devam ettiğimizde profilin güvenlik penceresine ulaşacağız. Burada profilin public mi yoksa private mi olacağını belirleyebiliyoruz.
Next ile devam ederek yollayacağımız mail parametrelerini belirttiğimiz ekrana ulaşıyoruz.
Next ile devam ederek finish ile işlemimizi bitiriyoruz.
Send test e-mail ile database maili test edebiliriz. database mail ile işimiz burada bitiyor.
Şimdi ise mailleri alacak kişiyi belirlemek için bir operatör oluşturmamız gerekmektedir.
sql server agent altından operators-new operatör ile aşağıdaki pencereye ulaşılır
Operatörü de oluşturduktan sonra sql server agent servisini yapılandırmamız gerekmektedir. Agent üzerinde sağ tıklayarak properties penceresinden aşağıdaki ekrana ulaşıyoruz. Enable mail profile seçilerek oluşturduğumuz database mail profilini seçiyoruz.
Son bir işlemimiz kaldı. Daha öncede oluşturmuş olduğumuz otomatik yedekleme planına ait job üzerinde sağ tıklayarak properties penceresinden;
Notifications sekmesine ulaşarak e-mail kutucuğunu işaretliyoruz ve oluşturduğumuz operatörü(mailin alıcısını) seçiyoruz. Burada ki açılır pencerede karşımıza 3 seçenek çıkacaktır. Bunlar sırasıyla,
1- Job başarısız olduğunda mail bildirilsin
2- Job başarılı olduğunda mail bildirilsin
3- Jon hem başarılı hem de başarısız olduğunda mail bildirilsin
İstediğimize göre Notifications u seçerek işlemimizi bitiyoruz. İşlemin sonucunda sql server agent servisini yeniden başlatmanız gerekmektedir.
Job çalıştıktan sonra operatörün mail adresine ulaşan mail örneği;
Job Run: ‘Maintenanceplan.Subplan_1’ Was Run On 15.12.2007 At 12:43:20
Duratıon: 0 Hours, 0 Minutes, 25 Seconds
Status: Succeeded
Messages: The Job Succeeded. The Job Was İnvoked By User Xxxxx\Xxxx. The Last Step To Run Was Step 1 (Subplan_1).
Tanju Demir