Summary: ISInteg.exe and ESEUtil.exe are inbuilt Exchange utilities that can be used to repair Exchange database (EDB) files. However, repairing EDB files by using these utilities should be considered as a measure of last resort as these can cause accidental loss of data. However, it’s better to safeguard the servers as much as possible. So, when disaster strikes, you’ll be well-prepared to handle any eventuality, with the right tools in hand.
While knowing their way around setup, installation, and maintenance of the Exchange server, administrators must also keep a constant eye out for troubles. Even a smallest issue within the server or database files can trigger disasters that can bring down a whole organization’s working. Thus, being aware of utilities that can help resolve Exchange errors quickly is a must for them.
When it comes to ideal repair utilities, inbuilt system utilities are the most preferred. They not only offer the easiest solution to fix the problem but are also free of cost. In the Exchange server, ESEUtil.exe and ISInteg.exe are two such utilities. However, in this post, we’ll focus on the ISInteg.exe utility and its usage.
About ISInteg Utility
ISInteg stands for Microsoft Exchange Information Store Integrity Checker. It is a command-line utility that searches through an offline information store, such as Exchange, for integrity weaknesses. The issues that ISInteg detects can mostly be repaired without much hassle. By default, the ISInteg tool is installed in the Bin folder in Exchange Server setup. To run it globally on a server from any command prompt, the full path of Bin directory needs to be added when executing the command.
The ISInteg utility is mostly used with one of the following switches:
-? – Usage is displayed
-pri – Check private information store (default)
-pub – Check public information store
-fix – Repair information store
-l [logfilename] – Store log information in logfilename
-patch – Offline backup restore patch
-s – Server name (applicable only to Exchange 2000)
Repairing Exchange Database with ISInteg
When trying to repair Exchange database by using the ESEUtil and ISInteg utilities, you should keep the following things in mind:
Before proceeding with the repair, copy all database files since the repair procedure can cause some data loss
You must have sufficient free disk space to successfully run ISInteg and ESEUtil
Database repair with these utilities takes a substantial amount of time, depending on the size and damage
If ISInteg completes its operation without any errors, the database on which it was run is considered to be repaired and ready to replace the damaged database. To put the repaired database back into production:
Run Eseutil /MH to see if the database is in Healthy Shutdown
After Eseutil /D completes successfully, run Isinteg –fix –test alltests
If, after running ISInteg, the error count in the database is greater than zero (meaning some errors still remain), do not discard the repaired database. Instead, run ISInteg again until the count becomes zero or the count does not decrement on successive runs. If successive runs of ISInteg fail to bring the error count to zero, attempt to recover as much data from the repaired database as possible.
Problems with ISInteg
While ISInteg is a perfectly efficient utility to repair Exchange, it has been deprecated from Exchange server 2010. This means users of Exchange 2010 and later versions cannot use this tool to detect and fix Exchange errors. However, to replace the functionality of ISInteg, Microsoft has introduced an online mailbox corruption scanner that can run against all mailboxes during the normal maintenance window. This scanner is the New-MailboxRepairRequest cmdlet in EAS. To run it, the database doesn’t need to be taken offline.
In the above command, COMMON PARAMETERS include instructions to detect and repair corruption based on its type. This cmdlet can detect and fix the following types of corruptions:
Search folder corruption (SearchFolder)
Aggregate count on folders that aren’t reflecting correct values (AggregateCounts)
Views on folders that aren’t returning correct contents (FolderView)
Provisioned folders that are incorrectly pointing into parent folders that aren’t provisioned (ProvisionedFolder)
Note: Before running this cmdlet, appropriate permissions need to be assigned to the account from which they are to be run.
A Better Alternative
While ISInteg can repair corruption in most cases for Exchange versions prior to 2010 and New-MailboxRepairRequest can do the same for Exchange 2010 and later, using these utilities is not a piece of cake. You need to have proper understanding of their working and be ready to accept some data loss, since they aren’t foolproof. You’ll also need proper permissions to use these utilities. Even after all that, these utilities might fail to fix severely corrupted EDB files.
A better approach, thus, is to use competent and reliable third-party Exchange database recovery tool such as Stellar Repair for Exchange. Empowered with advanced scanning and repair algorithms, this tool is the perfect alternative to ISInteg and EseUtil utilities. It doesn’t require you to have any special permissions, nor does it need you to be a technical expert. It is a GUI-based tool that can repair multiple Exchange mailboxes simultaneously.
A Few Final Lines
While inbuilt utilities are good, they aren’t always the best. For a little investment, you can get a hold of much better utilities such as the one we suggested and deal with Exchange troubles in an extremely easy way. This can reduce the administrative efforts to fix the problems and also decrease the recovery time.
Eric Simson is an Email Platform Consultant and is associated with Stellar Data Recovery from last 6 years. He writes about the latest technology tips and provides custom solutions related to MS Outlook, MS Exchange Server, Office 365, and many other Email Clients & Servers.