Note Linked form this URL:  https://www.petenetlive.com/KB/Article/0001435

Error:
The following error was generated when "$error.Clear(); 
          if ($RoleIsDatacenter -ne $true -and $RoleIsDatacenterDedicated -ne $true)
          {
          if (Test-ExchangeServersWriteAccess -DomainController $RoleDomainController -ErrorAction SilentlyContinue)
          {
          $sysMbx = $null;
          $name = "SystemMailbox{bb558c35-97f1-4cb9-8ff7-d53741dc928c}";
          $dispName = "Microsoft Exchange";
          Write-ExchangeSetupLog -Info ("Retrieving mailboxes with Name=$name.");
          $mbxs = @(Get-Mailbox -Arbitration -Filter {name -eq $name} -IgnoreDefaultScope -ResultSize 1 );
          if ($mbxs.Length -eq 0)
          {
          Write-ExchangeSetupLog -Info ("Retrieving mailbox databases on Server=$RoleFqdnOrName.");
          $dbs = @(Get-MailboxDatabase -Server:$RoleFqdnOrName -DomainController $RoleDomainController);
          if ($dbs.Length -ne 0)
          {
          Write-ExchangeSetupLog -Info ("Retrieving users with Name=$name.");
          $arbUsers = @(Get-User -Filter {name -eq $name} -IgnoreDefaultScope -ResultSize 1);
          if ($arbUsers.Length -ne 0)
          {
          Write-ExchangeSetupLog -Info ("Enabling mailbox $name.");
          $sysMbx = Enable-Mailbox -Arbitration -Identity $arbUsers[0] -DisplayName $dispName -database $dbs[0].Identity;
          }
          }
          }
          else
          {
          if ($mbxs[0].DisplayName -ne $dispName )
          {
          Write-ExchangeSetupLog -Info ("Setting DisplayName=$dispName.");
          Set-Mailbox -Arbitration -Identity $mbxs[0] -DisplayName $dispName -Force;
          }
          $sysMbx = $mbxs[0];
          }

          # Set the Organization Capabilities needed for this mailbox
          if ($sysMbx -ne $null)
          {
          # We need 1 GB for uploading large OAB files to the organization mailbox
          Write-ExchangeSetupLog -Info ("Setting mailbox properties.");
          set-mailbox -Arbitration -identity $sysMbx -UMGrammar:$true -OABGen:$true -GMGen:$true -ClientExtensions:$true -MailRouting:$true -MessageTracking:$true -PstProvider:$true -MaxSendSize 1GB -Force;

          Write-ExchangeSetupLog -Info ("Configuring offline address book(s) for this mailbox");
          Get-OfflineAddressBook | where {$_.ExchangeVersion.CompareTo([Microsoft.Exchange.Data.ExchangeObjectVersion]::Exchange2012) -ge 0 -and $_.GeneratingMailbox -eq $null} | Set-OfflineAddressBook -GeneratingMailbox $sysMbx.Identity;
          }
          else
          {
          Write-ExchangeSetupLog -Info ("Cannot find arbitration mailbox with name=$name.");
          }
          }
          else
          {
          Write-ExchangeSetupLog -Info "Skipping creating E15 System Mailbox because of insufficient permission."
          }
          }
        " was run: "Microsoft.Exchange.Data.DataValidationException: Database is mandatory on UserMailbox.".

Error:
The following error was generated when "$error.Clear(); 
          if ($RoleIsDatacenter -ne $true -and $RoleIsDatacenterDedicated -ne $true)
          {
          if (Test-ExchangeServersWriteAccess -DomainController $RoleDomainController -ErrorAction SilentlyContinue)
          {
          $sysMbx = $null;
          $name = "SystemMailbox{bb558c35-97f1-4cb9-8ff7-d53741dc928c}";
          $dispName = "Microsoft Exchange";
          Write-ExchangeSetupLog -Info ("Retrieving mailboxes with Name=$name.");
          $mbxs = @(Get-Mailbox -Arbitration -Filter {name -eq $name} -IgnoreDefaultScope -ResultSize 1 );
          if ($mbxs.Length -eq 0)
          {
          Write-ExchangeSetupLog -Info ("Retrieving mailbox databases on Server=$RoleFqdnOrName.");
          $dbs = @(Get-MailboxDatabase -Server:$RoleFqdnOrName -DomainController $RoleDomainController);
          if ($dbs.Length -ne 0)
          {
          Write-ExchangeSetupLog -Info ("Retrieving users with Name=$name.");
          $arbUsers = @(Get-User -Filter {name -eq $name} -IgnoreDefaultScope -ResultSize 1);
          if ($arbUsers.Length -ne 0)
          {
          Write-ExchangeSetupLog -Info ("Enabling mailbox $name.");
          $sysMbx = Enable-Mailbox -Arbitration -Identity $arbUsers[0] -DisplayName $dispName -database $dbs[0].Identity;
          }
          }
          }
          else
          {
          if ($mbxs[0].DisplayName -ne $dispName )
          {
          Write-ExchangeSetupLog -Info ("Setting DisplayName=$dispName.");
          Set-Mailbox -Arbitration -Identity $mbxs[0] -DisplayName $dispName -Force;
          }
          $sysMbx = $mbxs[0];
          }

          # Set the Organization Capabilities needed for this mailbox
          if ($sysMbx -ne $null)
          {
          # We need 1 GB for uploading large OAB files to the organization mailbox
          Write-ExchangeSetupLog -Info ("Setting mailbox properties.");
          set-mailbox -Arbitration -identity $sysMbx -UMGrammar:$true -OABGen:$true -GMGen:$true -ClientExtensions:$true -MailRouting:$true -MessageTracking:$true -PstProvider:$true -MaxSendSize 1GB -Force;

          Write-ExchangeSetupLog -Info ("Configuring offline address book(s) for this mailbox");
          Get-OfflineAddressBook | where {$_.ExchangeVersion.CompareTo([Microsoft.Exchange.Data.ExchangeObjectVersion]::Exchange2012) -ge 0 -and $_.GeneratingMailbox -eq $null} | Set-OfflineAddressBook -GeneratingMailbox $sysMbx.Identity;
          }
          else
          {
          Write-ExchangeSetupLog -Info ("Cannot find arbitration mailbox with name=$name.");
          }
          }
          else
          {
          Write-ExchangeSetupLog -Info "Skipping creating E15 System Mailbox because of insufficient permission."
          }
          }
        " was run: "Microsoft.Exchange.Data.DataValidationException: Database is mandatory on UserMailbox.
   at Microsoft.Exchange.Configuration.Tasks.Task.ThrowError(Exception exception, ErrorCategory errorCategory, Object target, String helpUrl)
   at Microsoft.Exchange.Configuration.Tasks.Task.WriteError(Exception exception, ErrorCategory category, Object target, Boolean reThrow)
   at Microsoft.Exchange.Configuration.Tasks.DataAccessTask`1.Validate(TDataObject dataObject)
   at Microsoft.Exchange.Configuration.Tasks.SetTaskBase`1.InternalValidate()
   at Microsoft.Exchange.Configuration.Tasks.SetRecipientObjectTask`3.InternalValidate()
   at Microsoft.Exchange.Management.Common.SetMailEnabledRecipientObjectTask`3.InternalValidate()
   at Microsoft.Exchange.Management.RecipientTasks.SetUserBase`3.InternalValidate()
   at Microsoft.Exchange.Management.RecipientTasks.SetMailboxBase`3.InternalValidate()
   at Microsoft.Exchange.Management.RecipientTasks.SetMailbox.InternalValidate()
   at Microsoft.Exchange.Configuration.Tasks.Task.<ProcessRecord>b__91_1()
   at Microsoft.Exchange.Configuration.Tasks.Task.InvokeRetryableFunc(String funcName, Action func, Boolean terminatePipelineIfFailed)".