Exchange 2016 – New-MailboxRepairRequest: Fix corputed mailbox or database

Recently had an issue where a user who was a carried over from Exchange Server 2003 way back when had multiple corrupt items. When he was originally migrated to Exchange Server 2010 there were a number of items which so how got corrupt. This inhibited his search abilities. With the New-MailboxRepairRequest command in Exchange 2016 I was able to resolve this issue.

I ran the repair against all options:

  • ProvisionedFolder
  • SearchFolder
  • AggregateCount
  • Folderview

Once complete we recreated the user’s .OST file since he works in cached mode.

You can find more info on this at Technet:

https://docs.microsoft.com/en-us/powershell/module/exchange/mailbox-databases-and-servers/new-mailboxrepairrequest?view=exchange-ps

Exchange – How to disable Journaling for Voicemails and Missed call notifications

If you are sending emails to a Journaling connector and do not wish to journal voicemail messages for legal or business purposes you can disable this feature with the following command.

Set-TransportConfig -VoicemailJournalingEnabled $false 

Exchange 2016 -Adjusting Retention for Calendar and Tasks

A client recently asked to have a retention for mail items but to leave calendar and tasks untouched. When in the ECP the option to create a specific retention tag for calendar items or tasks is missing. You must do this through Powershell.

Below is the command I used for both Calendar items and Tasks

New-RetentionPolicyTag “Name of Retention Policy Tag” -Type Calendar -RetentionEnabled $false -RetentionAction DeleteAllowRecovery

Do the same for Tasks replacing Calendar for Tasks in the Type field. Once run you can then add these Retention Policy Tags to your Retention Policy.

Exchange 2016 – ContentIndex State in Suspended state

I have noticed on occasion that after suspending a database copy for a prolonged period of time the ContentIndex State may be stuck in a Suspended state.

You can resolve this situation by reseeding the ContentIndex only from the Active copy.

Update-MailboxDatabaseCopy “DatabaseName\ExchangeServer” -CatalogOnly

 

Exchange 2016 – Unable to move Database due to suppression

The other day while updating Exchange 2016 to the latest CU, I ran across the following error message:

An Active Manager operation failed. Error: The database action failed. Error: Move for database ‘DatabaseName’ was  suppressed because too many moves have happened recently. 3 moves have happened within 01:00:00

Before updating, I had applied the latest security patches plus needed to update .NET Framework so I was moving datastores back and forth.

To get around this error you can use the SkipMoveSuppressionChecks parameter.

Move-ActiveMailboxDatabase -Identity ‘DatabaseName’ -ActivateOnServer ‘ExchangeServer’ -SkipMoveSuppressionChecks

Exchange Server 2010 – Issues Uninstalling Exchange

Yesterday, I was in the process of uninstalling the UM Role from an Exchange Server 2010 Server which we had set to decommission now that we are migrating to Exchange Server 2016.

Running Setup /mode:Uninstall from the following directory C:\Program Files\Microsoft\Exchange Server\V14\Bin – I ran into my first error.

2018-07-17_14-25-00

The tmlisten service is our Officescan Antivirus which was running at the time. I promptly unloaded the service and tried the uninstallation process again which generated the following error:

2018-07-17_14-28-01

C:\Program Files\Microsoft\Exchange Server\V14\Bin\ManageScheduleTask.ps1 is not recognized as the name of a cmdlet, function, script file, or operable program.

I found a possible solution here:

https://eightwone.com/2012/01/06/managescheduledtask-ps1-issue-uninstalling-exchange-2010-sp1/

Moved the ManageScheduletask.ps1 and ManageScheduletask.strings into the Bin directory from the Scripts directory. Apparently it may be a bug, re-ran the uninstalltion process but unfortunately the process failed again.

This time I was in a far worse situation since I had a half uninstalled version of Exchange on my UM server. The application was no longer visible in Programs and Features but the directory was clearly there (albeit missing files) and running Get-ExchangeServer clearly displayed the Exchange server in question.

I didn’t want to manually remove the server entries with ADSIEdit so I reinstalled Exchange Server 2010 SP3 only (we were at CU level 18 ).  Then reran the uninstallation process again.

The process failed yet again this time Setup could not find the following file ConfigureNetworkProtocolParameter.ps1 under the Scripts directory. Checked this location and indeed the file was missing because I cross referenced it with another Exchange server. I copied this file into the directory reran the process and was finally able to perform a clean uninstallation of Exchange.

2018-07-17_17-38-31

Exchange Server 2010 – Removing a Public Folder Replica

Microsoft has provided scripts to help with Public Folder management, in the event you need to remove a Public Folder Database from replication to the scripts directory of your installation path for Exchange.

Example: C:\Program File\Microsoft\Exchange Server\V14\scripts

Run the following:

.\RemoveReplicaFromPFRecursive.ps1 -TopPublicFolder “\” -ServerToRemove “NameofYourMailboxServer”

This will take some time to replicate. Once complete run the follow command to verify that all Public Folder replicas have been removed from this Public Folder Database.

Get-PublicFolder -Recurse | ft Name,ParentPath,Replicas

The replica for the given Public Folder Database should be removed. You can then proceed with removing the Public Folder Database.

Remove-PublicFolderDatabase “Name of your “PublicFolderDatabase”