Tuesday, November 29, 2022

Move-DatabasePath caused a “WMI exception occurred on server XY: Quota violation”

During the move from an Exchange Mailbox DB you got the following error:WMI exception occurred on server XY: Quota violation

The full error is:

[PS] C:\Windows\system32>Move-DatabasePath -Identity EXCHMB1 -EdbFilePath "F:\MailboxDatabases\EXCHMB1\EXCHMB1.edb" -LogFolderPath "F:\MailboxLogs\EXCHMB1"
Failed to connect to target server "EXCH02". Error: WMI exception occurred on server 'exch02.emea.contoso.com': Quota violation
    + CategoryInfo          : InvalidOperation: (EXCHMB1:DatabaseIdParameter) [Move-DatabasePath], InvalidOperationException
    + FullyQualifiedErrorId : [Server=EXCH02,RequestId=d4712e1c-0586-4293-b240-4e767d936f6d,TimeStamp=2018-05-27 18:15:24] [FailureCategory=Cmdlet-InvalidOperationException]
    BF1995F3,Microsoft.Exchange.Management.SystemConfigurationTasks.MoveDatabasePath
    + PSComputerName        : exch02.emea.contoso.com

The issue above could happen, if there is a very large amount of log files on the log folder path. One possible solution to solve the issue would be to remove the Exchange Server transaction log files as written by Microsoft here.

Those log files grows when the Exchange server receives an email, then it dumps the email to the transaction logs and when the Exchange server has time, it free´s it up and plays these logs into the database.These Exchange logs get deleted, when the backup environment finished the backup from the DB.

So sometimes Exchange may not have played all these log files into the database and you can´t simply “delete” them without a possible data lost, so you need to check at first if its save to delete them. To do that perform the following:

1.) Dismount the Exchange Mailbox Databases you wish to clean up.

2.) Start a CMD via run as admin

3.) Inside that CMD use ESEUTIL to view if all the logs have been played into the Exchange Database. This can be done via:

eseutil /MH database.edb

It should show something like “State: Clean Shutdown” inside the output which looks like below:


Extensible Storage Engine Utilities for Microsoft(R) Exchange Server
Version 15.01
Copyright (C) Microsoft Corporation. All Rights Reserved.

Initiating FILE DUMP mode...
         Database: EXCHMB1.edb


DATABASE HEADER:
Checksum Information:
Expected Checksum: 0xc2c8b4b9
  Actual Checksum: 0xc2c8b4b9

Fields:
        File Type: Database
         Checksum: 0xc2c8b4b9
   Format ulMagic: 0x89abcdef
   Engine ulMagic: 0x89abcdef
 Format ulVersion: 0x620,20,0  (attached by 0)
 Engine ulVersion: 0x620,60,120  (efvCurrent = 9040)
Created ulVersion: 0x620,20
     DB Signature: Create time:06/10/2016 12:36:06.288 Rand:3801700655 Computer:
         cbDbPage: 32768
           dbtime: 7269971185 (0x1b152f4f1)
            State: Clean Shutdown
     Log Required: 0-0 (0x0-0x0)
    Log Committed: 0-0 (0x0-0x0)
   Log Recovering: 0 (0x0)
   Log Consistent: 0 (0x0)
  GenMax Creation: 00/00/1900 00:00:00.000 LOC
         Shadowed: Yes
       Last Objid: 714248
     Scrub Dbtime: 0 (0x0)
       Scrub Date: 00/00/1900 00:00:00.000 LOC
     Repair Count: 0
      Repair Date: 00/00/1900 00:00:00.000 LOC
 Old Repair Count: 0
  Last Consistent: (0x4E02E4,C4,890)  05/27/2018 17:56:09.396 UTC
      Last Attach: (0x3DCD7F,2,268)  01/11/2018 22:41:38.140 UTC
      Last Detach: (0x4E02E4,C4,890)  05/27/2018 17:56:09.396 UTC
    Last ReAttach: (0x4DF149,2,268)  05/25/2018 19:33:52.192 UTC
             Dbid: 1
    Log Signature: Create time:06/10/2016 12:36:06.225 Rand:2532421212 Computer:
       OS Version: (6.2.9200 SP 0 NLS ffffffff.ffffffff)

Previous Full Backup:
        Log Gen: 4912506-4912599 (0x4af57a-0x4af5d7) - OSSnapshot
           Mark: (0x4AF5D8,1,0)
           Mark: 04/27/2018 18:07:24.022 UTC

Previous Incremental Backup:
        Log Gen: 0-0 (0x0-0x0)
           Mark: (0x0,0,0)
           Mark: 00/00/1900 00:00:00.000 LOC

Previous Copy Backup:
        Log Gen: 0-0 (0x0-0x0)
           Mark: (0x0,0,0)
           Mark: 00/00/1900 00:00:00.000 LOC

Previous Differential Backup:
        Log Gen: 0-0 (0x0-0x0)
           Mark: (0x0,0,0)
           Mark: 00/00/1900 00:00:00.000 LOC

Current Full Backup:
        Log Gen: 0-0 (0x0-0x0)
           Mark: (0x0,0,0)
           Mark: 00/00/1900 00:00:00.000 LOC

Current Shadow copy backup:
        Log Gen: 0-0 (0x0-0x0)
           Mark: (0x0,0,0)
           Mark: 00/00/1900 00:00:00.000 LOC

     cpgUpgrade55Format: 0
    cpgUpgradeFreePages: 0
cpgUpgradeSpaceMapPages: 0

       ECC Fix Success Count: none
   Old ECC Fix Success Count: none
         ECC Fix Error Count: none
     Old ECC Fix Error Count: none
    Bad Checksum Error Count: none
Old bad Checksum Error Count: none

  Last Database Maintenance Finish Date: 01/31/2017 03:13:56.808 UTC
Current Database Maintenance Start Date: 02/11/2017 03:36:16.189 UTC
      Highest Continuous Database Maintenance Page: 2148328
      Highest Database Maintenance Page: 1357264

  Database Header Flush Signature: Create time:05/27/2018 17:56:09.396 Rand:250959763 Computer:
 Flush Map Header Flush Signature: Create time:00/00/1900 00:00:00.000 Rand:0 Computer:


Operation completed successfully in 0.15 seconds.

Keep noted that if you perform the deletion with another state as Clean Shutdown, you will for sure get an data lost!

3.) If you have a “Clean Shutdown” from the Database, you can delete all the *.log files. Depending on the large amount the best way would be to do that via DOS:

cd D:\MailboxLogs\EXCHMB1

del E0400E*.log

4.) Delete the chk file. This file is the checkpoint file, which keeps track of which log files have been and have not been played into the database. Since there are no log files anymore as we deleted them, the checkpoint is not needed and should be deleted as well.

5.) remount the DB

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Stay Connected

24FollowersFollow
- Advertisement -

Latest Articles