Sahip olduğumuz Exchange Server üzerindeki mail trafiği her zaman sorunsuz işlemeye devam etmeyebilir. Olası kötü durumlara karşı kendimizi hazırlamamız gerekmektedir. İyi bir sistem yöneticisi olarak her zaman düzenli yedeklerimizi alsak ta bazı sorunlar yedek ile çözümlenemez. Servisin yavaşlaması ,gönderilen maillerin kuyrukta beklemesi , mail alma ve gönderme işleminin çok geç gerçekleşmesi , istemci mail alma programlarında ki tutarsızlık , servislerin çok fazla kaynak tüketmesi gibi durumlar bize Exchange Server’ın sorun çıkarmak üzere olduğunu ve bunun için yedekten fazlasını yapmamız gerektiğini göstermektedir .
Defrag yapmak için öncelikle Mailbox Store u Dismount etmemiz gerekmektedir.
Bu işlem için ESM üzerinden şekilde gösterildiği gibi Store un üzerine gelerek “Dismount Store” seçeneğini seçiyoruz.
İşlem başarı ile sonuçlandıktan sonra artık Mailbox Store u tekrar mount edebiliriz
Bu işlem sayesinde artık veri tabanı gözle görülür bir şekilde küçülmektedir.
Eğer farkında olmadan Exchange Server şişmiş ve veritabanının bulunduğu diskte yer kalmamış ise Exchange Server çalışmaya devam edemeyecektir. Bu durumda en iyi çözüm hızlı bir şekilde defrag yapmak ve yer açmaktır . Ancak sorun ise defrag için gerekli olan %110 boş alanın zaten elinizde olmaması . Böyle bir durumda ise yine kullanacağınız bir ESEUTIL switch i ile bu sorunu aşabilirsiniz.
Defrag sırasında “t” switch i kullanılmaz ise eğer veritabanının bulunduğu dizinde “Tempdfrgxxx.edb” isminde geçici veritabanı dosyası oluşturulur .
Eğer veritabanının bulunduğu disk üzerinde yeriniz yok ise geçici veri tabanı dosyasını isterseniz “t” komutu ile başka bir dizin üzerine alabilirsiniz . Örneğin aşağıdaki komut ile geçici veri tabanı ismini ve konumunu değiştirmiş oluyorum . Bu komuta göre geçici veri tabanı bilgisayarımın “D” dizininde “temp.edb” isminde olacaktır .
eseutil /d "c:\program files\exchsrvr\mdbdata\priv1.edb" /t d:\temp.edb
Kullandığım “t” komutu ile defrag için gerekli olan geçici veritabanı dosyası artık belirtilen dizine alınabilir . ( not : eğer tek disk var ise map network drive üzerinde de sorunsuz çalışmaktadır. )
ESEUTIL ile aynı zamanda bozulmuş data dosyalarını da düzeltme şansınız bulunmaktadır .
Örneğin virüs programları sonucu zarar görmüş ve mount olmayan db yi /P komutu ile onarabiliriz.
eseutil /p "c:\program files\exchsrvr\mdbdata\priv1.edb"
Komutu çalıştırdığımızda karşımıza bir uyarı ekranı gelecektir.
Bu ekranda bize Repair işleminin loglara yansımayacağı bildirilmektedir.
İşlemin sonucunda veritabanının bütünlüğünü kontrol etmek ve olası sorunları düzeltmek için aşağıdaki komutu kullanıyoruz.
isinteg –s kayro –test folder
( kayro = server ismi , folder ise test dosyasının ismi , -fix komutunu da kullanarak sorunları düzeltebilirsiniz )
bu komut hakkında daha fazla bilgi için http://support.microsoft.com/kb/182081/tr
Bu işlemin ardından sorunlu veritabanı sorunsuz bir şekilde mount olacaktır . ( not : bu işlemin %100 kurtarma ve onarma garantisi yoktur. )
Bu işlemlere rağmen veritabanı mount olmuyor ve sorunlar devam ediyor ise “/g” komutunu kullanabiliriz .
Bu komut veritabanının bütünlüğünü kontrol eder ve eğer sorunlar var ise artık “/r” parametresini kullanabileceğimizi gösterir.
Eğer veri tabanı hala sorunlu ise “/r” parametresi ile “Soft Recovery” işlemi yapılabilir . Microsoft ; eğer Exchange Server ın veri dosyaları duruyor ancak mount işlemi gerçekleşmiyor ise bu işlemi öneriyor . Ancak veri dosyaları yok olmuş ve online olarak yedekten geri dönülmüş ise o zaman “Hard Recovery” yani “/c” parametresini önermektedir.
Eseutil Recovery faklı bir lokasyona taşınmış veritabanını kurtarabilir, bu özellik yalnızca Exchange 2003 le beraber kullanılabilir. Hard recovery "veritabanı back up alındıktan sonra bile" farklı lokasyona taşınmış olsa dahi geri kurtarma işlemini başarı ile tanımlar. Exchange 2003 öncesine kadar ise Veritabanını kurtarmak için Transaction Log files ın bulunduğu konumda olması gerekirdi. Exchange 2003 de /D switch’i kurtarma moduna eklenmiştir ve böylece transaction log files ın bulunduğu konuma da transaction logları tarafından yazılmış bilgilere rağmen geri yüklemeyi başarır. Bu yeni özellik çevrimdışı veritabanlarını " Recovery Storage Groups" a yazarken ve ya yukarıda ki senaryoda gibi bozulmuş veritabanlarını kurtarırken son derece kullanışlıdır.
Veritabanını ve transaction log dosya gruplarını istediğiniz klasöre kopyalayabilir ve başarılı bir şekilde normal geri kurtarma işlemi yapabilirsiniz. Veritabanı bir kez doğrulandığında ( Consistence ) daha sonra veritabanını istediğiniz lokasyona taşıyabilirsiniz ve farklı log larla ilişkilendirebilirsiniz.
eseutil /r e00 /i ( veritabanının olduğu dizinde çalıştırın )
Komutun çalıştırılmış şekli yukarıdaki gibidir . Bu uygulama ile beraber sorunlu olan veritabanı dosyaları düzelecektir. ( yine bu konuda da Microsoft bir garanti vermemektedir. )
Eğer ESEUTIL aracını Exchange üzerinde değil de bir başka makinede çalıştırmak istiyorsanız Exchange server dan aşağıdaki dosyaları kopyalamanız gerekmektedir
Eseutil.exe, Ese.dll, Jcb.dll, Exosal.dll, Exchmem.dll
“C:\Program Files\Exchsrvr\bin” dizininde bulunmaktadır .
ESEUTIL ile yapılacaklar bunlarında ötesindedir , ancak her bir komutu ve bu komutların switchleri ayrı bir makale konusu olduğundan en önemli ve en çok kullanılan komutların üzerinde durmaya çalıştım.