ESEUTIL: Datenbank Integritäts-Check

Lesedauer: 3 Minuten

Wenn Sie die Integrität eseutil /g <database> und den aktuellen Status eseutil /mh <database> einer Exchange Datenbank überprüfen möchten, müssen Die zuerst die Datenbank offline schalten. Im ECM wird dieser Vorgang Bereitstellung der Datenbank aufheben genannt, in der PowerShell wird dazu das Kommando Dismount-Database verwendet:

[PS] C:\Windows\system32>Dismount-Database DB1

Danach können zu zuerst mal den Header der Datenbank mit eseutil auslesen /mh:

[PS] C:\Windows\system32>eseutil.exe /mh e:\database\db1.edb
Extensible Storage Engine Utilities for Microsoft(R) Exchange Server
Version 14.03
Copyright (C) Microsoft Corporation. All Rights Reserved.

Initiating FILE DUMP mode...
         Database: e:\database\db1.edb


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

Fields:
        File Type: Database
         Checksum: 0xbcfe2c1
   Format ulMagic: 0x89abcdef
   Engine ulMagic: 0x89abcdef
 Format ulVersion: 0x620,17
 Engine ulVersion: 0x620,17
Created ulVersion: 0x620,17
     DB Signature: Create time:03/19/2013 14:01:05 Rand:10417143 Computer:
         cbDbPage: 32768
           dbtime: 349695038 (0x14d7ec3e)
            State: Clean Shutdown
     Log Required: 0-0 (0x0-0x0)
    Log Committed: 0-0 (0x0-0x0)
   Log Recovering: 0 (0x0)
  GenMax Creation: 00/00/1900 00:00:00
         Shadowed: Yes
       Last Objid: 8972
     Scrub Dbtime: 0 (0x0)
       Scrub Date: 00/00/1900 00:00:00
     Repair Count: 0
      Repair Date: 00/00/1900 00:00:00
 Old Repair Count: 0
  Last Consistent: (0x7B03C,22C,CC)  05/20/2015 15:59:57
      Last Attach: (0x6CC96,9,86)  04/28/2015 11:09:12
      Last Detach: (0x7B03C,22C,CC)  05/20/2015 15:59:57
             Dbid: 1
    Log Signature: Create time:03/19/2013 14:01:05 Rand:10408743 Computer:
       OS Version: (6.1.7601 SP 1 NLS ffffffff.ffffffff)

Previous Full Backup:
        Log Gen: 497308-497315 (0x7969c-0x796a3) - OSSnapshot
           Mark: (0x796A4,8,16)
           Mark: 05/17/2015 12:01:55

Previous Incremental Backup:
        Log Gen: 499465-502812 (0x79f09-0x7ac1c) - OSSnapshot
           Mark: (0x7AC1D,8,16)
           Mark: 05/19/2015 23:46:42

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

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

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

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

     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 checksum finish Date: 00/00/1900 00:00:00
Current checksum start Date: 00/00/1900 00:00:00
      Current checksum page: 0


Operation completed successfully in 0.125 seconds.

Nach einem Absturz des Exchange Servers stellt sich häufig die Frage, nach dem Status der Datenbank (Zeile 25)

Zur weiteren Analyse der Datenbank kann der Integritycheck /g ausgeführt werden, dieser dauert je nach Datenbankgröße schon ein paar Minuten. Die hier getestete Datenbank war nur ca, 30GB groß:

[PS] C:\Windows\system32>eseutil.exe /g e:\database\db1.edb
Extensible Storage Engine Utilities for Microsoft(R) Exchange Server
Version 14.03
Copyright (C) Microsoft Corporation. All Rights Reserved.

Initiating INTEGRITY mode...
        Database: e:\database\db1.edb
  Temp. Database: TEMPINTEG16356.EDB

Checking database integrity.

                     Scanning Status (% complete)

          0    10   20   30   40   50   60   70   80   90  100
          |----|----|----|----|----|----|----|----|----|----|
          ...................................................


Integrity check successful.

Operation completed successfully in 270.131 seconds.

Sollten hier Probleme identifiziert werden, kann die Datenbank mit dem Schalter /r recoverd werden. Dadurch wird eine Datenbank, die sich im Dirty Shutdown State befindet, wieder mit den Transactionlogs zusammengeführt.

Abschließend wird die Datenbank wieder online geschaltet. Im EMC nennt sich das Datenbank bereitstellen, in der Konsole wird das Mount-Database Kommando dafür verwendet:

[PS] C:\Windows\system32>Mount-Database DB1

Loading

Updated on 7. September 2022
Was this article helpful?

Related Articles