Exchange Server'da posta kutusu veritabanı silinemiyor


Exchange Server'da posta kutusu veritabanını silemezsiniz ve bir hata görüntüleniyor. Hata: Bu posta kutusu veritabanı bir veya daha fazla posta kutusu, posta kutusu planı, arşiv posta kutusu, ortak klasör posta kutusu veya tahkim posta kutusu içeriyor. Bu neden oluyor ve hata neyi anlatıyor?

Bu yazımızda posta kutusu veri tabanını neden silemediğinizi ve hatanın çözümünü öğreneceksiniz.

Posta kutusu veritabanı çözümü silinemiyor

Hatanın çözümü veritabanında posta kutusu olmadığından emin olmaktır. Veritabanında posta kutuları varsa, Exchange Server'daki posta kutusu veritabanını silme yetkiniz yoktur. Posta kutusu veritabanındaki tüm posta kutularını tek tek kontrol etmeniz ve başka bir veritabanına taşımanız gerekir.

Hata: Bu posta kutusu veritabanı bir veya daha fazla posta kutusu, posta kutusu planı, arşiv posta kutusu, ortak klasör posta kutusu veya tahkim posta kutusu, Denetim posta kutusu içeriyor. Bu veritabanındaki tüm posta kutularının bir listesini almak için Get-Mailbox -Database komutunu çalıştırın. Bu veritabanındaki tüm posta kutusu planlarının bir listesini almak için Get-MailboxPlan komutunu çalıştırın. Bu veritabanındaki arşiv posta kutularının bir listesini almak için Get-Mailbox -Database -Archive komutunu çalıştırın. Bu veritabanındaki tüm ortak klasör posta kutularının bir listesini almak için Get-Mailbox -Database -PublicFolder komutunu çalıştırın. Bu veritabanındaki tüm tahkim posta kutularının bir listesini almak için Get-Mailbox -Database -Arbitration komutunu çalıştırın. Bu veritabanındaki tüm Denetim posta kutularının bir listesini almak için Get-Mailbox -Database -AuditLog komutunu çalıştırın. Posta kutusu veritabanını silebilmek amacıyla tahkim dışı bir posta kutusunu devre dışı bırakmak için Posta Kutusunu Devre Dışı Bırak komutunu çalıştırın. Posta kutusu veritabanını silebilmek amacıyla arşiv posta kutusunu devre dışı bırakmak için Devre Dışı Bırak-Posta Kutusu -Archive komutunu çalıştırın. Posta kutusu veritabanını silebilmek amacıyla ortak klasör posta kutusunu devre dışı bırakmak için Disable-Mailbox -PublicFolder komutunu çalıştırın. Posta kutusu veritabanını silebilmek amacıyla Denetim posta kutusunu devre dışı bırakmak için Get-Mailbox -AuditLog | Posta Kutusunu Devre Dışı Bırak. Tahkim posta kutuları başka bir sunucuya taşınmalıdır; bunu yapmak için New-MoveRequest komutunu çalıştırın. Bu, kuruluştaki son sunucuysa, tahkim posta kutusunu devre dışı bırakmak için Disable-Mailbox -Arbitration -DisableLastArbitrationMailboxAllowed komutunu çalıştırın. Posta kutusu planları başka bir sunucuya taşınmalıdır; bunu yapmak için Set-MailboxPlan -Database komutunu çalıştırın.

Posta kutularını başka bir veritabanına taşımaya başlamadan önce

Posta kutularını taşımadan önce -ViewEntireForest parametresi de dahil olmak üzere Set-ADServerSettings cmdlet'ini çalıştırın. Bu, ormanın tamamındaki nesneleri görmenizi sağlayacaktır.

Set-ADServerSettings -ViewEntireForest $true

Veritabanlarını kontrol edin

Posta kutularını hangi veritabanına taşıyacağınızı biliyor musunuz? Hangi posta kutusu veritabanlarının mevcut olduğunu ve bunların takılı olup olmadığını kontrol etmek için -Status parametresi de dahil olmak üzere Get-MailboxDatabase cmdlet'ini çalıştırın.

Devamını oku: Exchange Server'da posta kutusu veritabanı bağlama durumunu kontrol edin »

Get-MailboxDatabase -Status | Sort Name | Format-Table Name, Server, Mounted

Takılan posta kutusu veritabanları görünür.

Name Server    Mounted
---- ------    -------
DB01 EX01-2016    True
DB02 EX01-2016    True

Posta kutularını başka bir veritabanına taşıma

Örneğimizde DB01 posta kutusu veritabanını sileceğiz. Bunu yapmadan önce posta kutularını taşımamız gerekiyor. Tüm posta kutularını posta kutusu veritabanı DB02'ye taşıyacağız. DB01 posta kutusu veritabanıyla ilişkili posta kutularının izlenmesi devre dışı bırakılacaktır.

Posta kutusu

Veritabanındaki sileceğiniz tüm posta kutularını bulmak için Get-Mailbox'ı çalıştırın.

Get-Mailbox -Database "DB01" -ResultSize Unlimited

New-MoveRequest cmdlet'i ile tüm posta kutularını bir veritabanından diğerine taşıyın.

Get-Mailbox -Database "DB01" -ResultSize Unlimited | New-MoveRequest -TargetDatabase "DB02"

Posta Kutusu Planı

Posta kutusu planı şirket içi Exchange ortamlarıyla ilgili değildir. Yalnızca bulut tabanlı hizmette kullanılabilir.

Posta kutusu planı, Exchange Online'daki posta kutusu özelliklerini otomatik olarak yapılandıran bir şablondur. Posta kutusu planları Office 365 lisans türlerine karşılık gelir. Yeni bir kullanıcıya lisans atadığınızda, oluşturulan yeni posta kutusundaki ayarları yapılandırmak için ilgili posta kutusu planı kullanılır. Mevcut bir kullanıcıya atanan lisansı değiştirirseniz posta kutusu planındaki yeni lisansla ilişkili ayarlar kullanıcının mevcut posta kutusuna uygulanır.

Posta kutusunu arşivle

Veritabanındaki arşiv posta kutularını bulun.

Get-Mailbox -ResultSize Unlimited | Where {$_.ArchiveDatabase -like "DB01"}

Arşiv posta kutularını başka bir veritabanına taşıyın.

Get-Mailbox -ResultSize Unlimited | Where {$_.ArchiveDatabase -like "DB01"} | New-MoveRequest -ArchiveTargetDatabase "DB02"

Ortak klasör posta kutusu

Veritabanındaki ortak klasör posta kutularını bulun.

Get-Mailbox -Database "DB01" -PublicFolder

Ortak klasör posta kutularını başka bir veritabanına taşıyın.

Get-Mailbox -Database "DB01" -PublicFolder | New-MoveRequest -TargetDatabase "DB02"

Tahkim posta kutusu

Veritabanında tahkim posta kutularını bulun.

Get-Mailbox -Database "DB01" -Arbitration

Tahkim posta kutusunu başka bir veritabanına taşıyın.

Get-Mailbox -Database "DB01" -Arbitration | New-MoveRequest -TargetDatabase "DB02"

Denetim Günlüğü posta kutusu

Veritabanında denetim günlüğü posta kutularını bulun.

Get-Mailbox -Database "DB01" -AuditLog

Denetim günlüğü posta kutularını başka bir veritabanına taşıyın.

Get-Mailbox -Database "DB01" -AuditLog | New-MoveRequest -TargetDatabase "DB02"

Posta kutusunu izleme

Microsoft, veritabanındaki izleme posta kutularını bulmak ve taşımak için hata günlüğüne yazmamıştır. En iyi uygulama, izleme posta kutularını posta kutusu veritabanları arasında taşımamaktır. Deneyimlerime göre izleme posta kutusunu bulup devre dışı bırakmak en iyisidir. Bunu yapmazsanız posta kutusu veritabanını sildikten sonra bir uyarı alırsınız. Ayrıca sağlık posta kutuları da bozuk durumda olacaktır. Exchange sağlık posta kutularını kontrol etme makalesini okuyun.

Posta kutusu veritabanıyla ilişkili izleme posta kutularını bulun.

Get-Mailbox -Database "DB01" -Monitoring | Format-Table Name, DisplayName, Database, Servername

Posta kutularını izlemeyi devre dışı bırakın.

Get-Mailbox -Database "DB01" -Monitoring | Disable-Mailbox -Confirm:$false

Posta kutularının taşınmasını doğrulayın

Tüm posta kutularının taşındığını doğrulayın. Bundan sonra tamamlanmış taşıma isteklerini kaldırın. Bunu yapmazsanız, bu posta kutusu veritabanının bir veya daha fazla taşıma isteğiyle ilişkilendirildiği hatasını alırsınız. Tüm taşıma isteklerini kaldırmak istiyorsanız üçüncü komutu çalıştırın.

Get-MoveRequestStatistics -MoveRequestQueue "DB02"

Get-MoveRequest -MoveStatus Completed -ResultSize Unlimited | Remove-MoveRequest -Confirm:$false

Get-MoveRequest -ResultSize Unlimited | Remove-MoveRequest -Confirm:$false

Posta kutusu veritabanını kaldırın

Exchange Yönetim Merkezi'nde oturum açın. Özellik bölmesinde sunucular'ı ve veritabanları sekmesini tıklayın. Liste görünümünde bağlantısını kesmek istediğiniz veritabanını seçin. Araç çubuğundaki Diğer… simgesini tıklayın ve Dağıt'ı tıklayın.

Veritabanının bağlantısını kestikten sonra liste görünümünde veritabanını seçin ve araç çubuğundaki sil simgesini tıklayın.

Veritabanını sildiğinizden eminseniz bir uyarı görüntülenecektir. Evet'i tıklayın.

Başka bir uyarı mesajı, belirtilen veritabanının kaldırıldığını gösterir. Veritabanı dosyasını sistemden manuel olarak kaldırmamız gerektiğini unutmayın.

Exchange Sunucusunda Dosya Gezgini'ni başlatın ve veritabanının konumuna gidin. Veritabanını ve günlükler klasörünü silin.

Kalan posta kutularını bulun

Posta kutusu veritabanını hâlâ silemiyorsanız bu, veritabanının hâlâ kuruluşta kaldığı anlamına gelir.

(C:) sürücüsünde bir Temp klasörü oluşturun. Bundan sonra aşağıdaki komutu çalıştırın.

dsquery * forestroot -attr * -limit 0 > "c:\temp\result_dsquery.txt"

Aşağıdaki komutu da çalıştırabilirsiniz.

Get-ADUser -Filter * -Properties * | Out-File -FilePath "c:\temp\result_PS.txt"

result_dsquery.txt veya result_PS.txt dosyasını Notepad veya Notepad++ ile açın ve veritabanı adını arayın. Posta kutusu veritabanının hâlâ hangi kullanıcı hesaplarına eklendiğini belirledikten sonra, ADSI Düzenleme'ye gidin ve onlardan değeri silin.

Önceki adıma dönün ve posta kutusu veritabanını Exchange Sunucusundan kaldırın.

ADSI Düzenleme ile posta kutusu veritabanını kaldırın

Yukarıdaki adımların tümünü uyguladınız ve Exchange Server posta kutusu veritabanını hâlâ kaldıramıyorsunuz. Bu, posta kutusu veritabanının hala mevcut AD yapılandırmasında olduğu anlamına gelir.

Not: ADSI Edit for Exchange görevlerinin kullanılması önerilmez. ADSI Edit'in son seçeneğiniz olduğu durumlar vardır.

Exchange Server posta kutusu veritabanını ADSI Edit ile kaldırmak için aşağıdaki adımları izleyin:

  1. Exchange Sunucusunda veya Etki Alanı Denetleyicisinde ADSI Düzenleme'yi başlatın
  2. Bağlan…'ı tıklayın
  3. Yapılandırma'yı seçin
  4. Tamam'ı tıklayın

  1. CN=Yapılandırma, DC=exoip, DC=yerel > CN=Hizmetler > CN=Microsoft Exchange > CN=EXOIP > CN=Yönetim Grupları > CN=Exchange Yönetim Grubu > Veritabanları'nı genişletin.

Not: EXOIP yerine dahili alanınızı seçin.

  1. Posta kutusu veritabanını sağ tıklayın ve Sil'i tıklayın

  1. Kapsayıcıyı ve içindeki her şeyi silmek için Evet'i iki kez tıklayın
  2. Exchange Yönetim Merkezi'nde oturum açın ve posta kutusu veritabanının silindiğini doğrulayın

Okumaya devam edin: Exchange Server'da posta kutusu taşıma isteğini duraklatın »

Çözüm

Exchange Server'da neden hata aldığınızı ve posta kutusu veritabanını silemediğinizi öğrendiniz. Tüm posta kutularını başka bir veritabanına taşımak için yukarıdaki komutları kullanın. Bundan sonra Exchange Server'daki posta kutusu veritabanını silin. Son olarak, posta kutusu veritabanını silin ve dosyaları Dosya Gezgini'nde manuel olarak günlüğe kaydedin.

Bu makaleyi beğendiniz mi? Ayrıca Exchange Server'da döngüsel günlük kaydını etkinleştir seçeneğini de beğenebilirsiniz. Bizi takip etmeyi ve bu makaleyi paylaşmayı unutmayın.

İlgili makaleler