Exchange Server 2016 Veritabanı silme, uygulamayı artık ortamdan kaldırmak istediğimizde yapmak isteyeceğimiz bir işlemdir.
Standart olarak Exchange yönetim paneli üzerinden veritabanı silme işlemi gerçekleştirirken genellikle hata ile karşılaşırız. Bunun nedeni de veritabanının kullanmış olduğu posta kutularını tam anlamıyla taşımamış olmamızdır.
Veritabanını silmek için Exchange Server 2016 Veritabanı Silme yazımdaki gibi işlemleri gerçekleştirirken aşağıdaki hatayı almamız muhtemeldir.
Yukarıdaki hata veritabanı üzerinden her şeyin silinmediğine dair bilgileri içeriyor. Veritabanı silme işlemi için detaylı olarak temizlik yapmamız gerekiyor. Aksi halde silme işlemi başarılı olmayacaktır.
İlk önce tüm kontrolleri sağlamak adına tüm veritabanlarının mounted yani sisteme bağlı ve aktif olduklarından emin olmamız gerekiyor:
Get-MailboxDatabase -Status | Sort Name | Format-Table Name, Server, Mounted Name Server Mounted ---- ------ ------- DB01 EX01-2016 True DB02 EX01-2016 True
Silmek istediğimiz veritabanı üzerinde herhangi bir posta kutusu olmadığından emin olmak için aşağıdaki komutu çalıştıralım.
Get-Mailbox -Database "DB01"
Bu sorgu sonucunda herhangi bir posta kutusu listelenmemelidir. Eğer hala silmek istediğimiz veritabanı üzerinde posta kutusu bulunuyorsa aşağıdaki komut ile bunları taşıyabiliriz.
Get-Mailbox -Database "DB01" -ResultSize Unlimited | New-MoveRequest -TargetDatabase "DB02"
Sonraki adımda arşiv posta kutularının varlığına bakmamız gerekecek:
Get-Mailbox -Database "DB01" -Archive
Eğer bir sonuç dönüyorsa bunları da taşımak için aşağıdaki komutu çalıştıralım:
Get-Mailbox -Database "DB01" -Archive | New-MoveRequest -TargetDatabase "DB02"
Ortak posta kutularını kontrol etmek adına aşağıdaki komutu çalıştıralım:
Get-Mailbox -Database "DB01" -PublicFolder
Bir sonuç dönmesi halinde taşıma işlemini yapalım:
Get-Mailbox -Database "DB01" -PublicFolder | New-MoveRequest -TargetDatabase "DB02"
Exchange Server 2016 tarafından kullanılan posta kutularının varlığını kontrol edelim:
Get-Mailbox -Database "DB01" -Arbitration
Yine bir sonuç dönmesi halinde taşıma işlemini yapalım:
Get-Mailbox -Database "DB01" -Arbitration | New-MoveRequest -TargetDatabase "DB02"
Veritabanına ait loglar bulunuyorsa bunları kontrol edelim:
Get-Mailbox -Database "DB01" -AuditLog
Herhangi bir sonuç dönmesi durumunda yine taşıma işlemi yapalım:
Get-Mailbox -Database "DB01" -AuditLog | New-MoveRequest -TargetDatabase "DB02"
Son olarak veritabanı üzerinde izleme yaptığımız posta kutularının varlığına bakalım:
Get-Mailbox -Database "DB01" -Monitoring | Format-Table Name, DisplayName, Database, Servername
Bu sefer herhangi bir sonuç dönmesi halinde ilgili posta kutularını devre dışı bırakalım:
Get-Mailbox -Database "DB01" -Monitoring | Disable-Mailbox -Confirm:$false
Şimdide yapmış olduğumuz bu istekleri temizleyelim:
Get-MoveRequestStatistics -MoveRequestQueue "DB02" Get-MoveRequest -ResultSize Unlimited | Where-Object {$_.Status -Like "Completed"} | Remove-MoveRequest -Confirm:$false Get-MoveRequest -ResultSize Unlimited | Remove-MoveRequest -Confirm:$false
Bu adımlardan sonra Exchange Server Veritabanı Silme işlemi yazımda belirttiğim adımları takip ederek başarılı bir şekilde Exchange Server 2016 veritabanı silme işlemini gerçekleştirebilirsiniz.
Exchange Server hakkındaki genel sorunlar için bu sayfayı kontrol edebilirsiniz.