Database Portability, Exchange Server 2010 Mailbox Databaselerinin aynı Exchange organizasyonda başka mailbox server üzerinde mount edilmesini sağlayan bir özelliktir. Exchange Server 2007 ile gelen bir özellik olup 2010’da da kullanımı devam etmektedir.
Exchange Server 2003 ve önceki sürümlerde bu işlemin yapılabilmesi için aşağıdaki durumların sağlanması gerekmektedir.
Sunucu ismi aynı olmalı
Recovery Storage Group’da olmalı
Aynı administrative group’taki başka sunucu olmalı
Exchange Server 2010’da ise sadece aynı exchange organizasyonunda olması yeterlidir. Microsoft, yeni exchange sürümünde felaketten kurtarma senaryolarının gerçekleştirilmesini önceki sürümlere göre daha kolaylaştırmaktadır.
Bu özellik sadece mailbox databaseler için kullanılabilir olup public folder databaseler için kullanılamaz.
Önceki sürümlere ait mailbox databaseleri Exchange server 2010’a taşınamazlar.
Taşıma işlemi tamamlandıktan sonra kullanıcı davranışları aşağıdaki şekilde olmaktadır.
– Microsoft Outlook 2010, Office Outlook 2007, Owa ve Windows Mobile 6.1 ve üst kullanıcılar Autodiscover sayesinde yeni database’e otomatik bağlantı kurarlar.
– Outlook 2003 kullanıcılarını yeni database’e bağlanması için elle ayarlama yapılması gerekmektedir.
Şimdi database portability işlemini gerçekleştirmek için senaryomuza bir göz atalım. Aynı organizasyon DAG1 ve DAG2 isimli mailbox sunucuları ve DAG1 üzerinde Data01 isimli database bulunmaktadır. Data01’de Duran,Hakan,Veli ve Osman isimli kullanıcılar vardır. DAG1 üzerindeki disk, işletim sistemi vb. nedenlerle problem yaşandığını varsayarak Data01 isimli database’i, database portability özelliği kullanılarak DAG2 üzerinde mount edilecek ve kullanıcıların database bağlanması sağlanacaktır.
işlemlerin gerçekleştirilebilmesi için mailbox database yedeklerinin alınmış olması gerekmektedir. Aksi takdirde restore için data olmayacak ve data kaybı yaşanacaktır.
DAG2’ye restore edilen data01 isimli database’in durum bilgisini kontol ederek işleme başlıyoruz. Restore işlemini hangi uygulamayı kullanarak yedek alıyorsak o uygulamayla yapıp database’e ait edb ve log dosyalarını klasöre dönüyoruz. Edb dosyasının bulunduğu konumda “eseutil /mh data01.edb” komutunu çalıştırarak durum bilgisine bakıyoruz. Database “dirty shutdown” durumunda olduğu için onarılması gerekmektedir.
DAG2 üzerinde data01’in “clean shutdown” durumuna getirmek için Eseutil komutunu /R parametresi ile kullanıyoruz. Eseutil /R, soft recovery işlemi olup loglar kullanılarak database tamir edilir. Eseutil /R ile işlem başarız olursa Eseutil /P ile repair işlemi gerçekleştirilir. Eseutil /P, loglara bakılmaksızın database “clean shutdown” durumuna getirir ve data kaybı yaşanabilir.
Soft recovery:
Eseutil /R E03 /i /d
Repair:
Eseutil /P Data01.edb
Repair işlemi sonrasında database, “clean shutdown” durumuna gelmiştir.
DAG2’de yeni bir mailbox database oluşturuyoruz ve database’i mount etmiyoruz. Aşağıdaki PS komutunu kullanarak yeni database’imizi oluşturuyoruz.
New-MailboxDatabase -Server DAG2 -Name Data01Restored -LogFolderPath C:\Data01\Log -EdbFilePath c:\Data01\DB\data01.edb
Bu işlem sonrasında data01’e ait edb ve log dosyalarını yeni oluştuduğumuz “data01restored” isimli database’in konumuna kopyalıyoruz.
Database dosyalarının kopyalanması:
Log dosyalarının kopyalanması:
Oluşturduğumuz database’in File restore’una izin vermek için aşağıdaki komutu kullanıyoruz.
set-mailboxdatabase Data01Restored -AllowFileRestore:$true
Database’i mount ediyoruz.
Data01’de kullanıcıları listelemek için “get-mailbox –database data01” PS komutunu kullanıyoruz.
Kullanıcıları yeni database yönlendirmek için aşağıdaki PS komutunu kullanıyoruz.
Get-Mailbox -Database Data01 | where {$_.ObjectClass -NotMatch ‘(SystemAttendantMailbox|ExOleDbSystemMailbox)’} | Set-Mailbox –Database Data01Restored
Kullanıcılar yeni database’e yönlendirilmiştir.
Veli kullanıcısıyla Owa’ya giriş yapıldığında eski maillere ulaşılmaktadır.
Böylece bir makalemizin daha sonuna geldik. Bir sonraki makalemizde görüşmek dileğiyle.
Database’iniz hep mount olsun.