How to Use ISInteg to Repair Corrupt Exchange Database?
Summary: ISInteg.exe and ESEUtil.exe are inbuilt Exchange utilities that can be used to repair Exchange database 2003, 2007, 2010. 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 - Stellar Repair for Exchange 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 Exchange 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. But in this post, we’ll focus on the ISInteg.exe utility and its usage along with a third-party Exchange repair software that comes handy when the inbuilt repair utilities or ISInteg.exe either fails to repair corrupt database or does not work due to lack of permissions or other errors. The Exchange repair software also helps recover deleted mailboxes and mail items during database repair.
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 (2003, 2007, 2010)
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 Exchange database files since the repair procedure can cause some data loss
- You must have sufficient free disk space to successfully run ISInteg and ESEUtil
- Exchange Database repair with these utilities takes a substantial amount of time, depending on the size and damage
Here’s the syntax to run the ISInteg utility:
isinteg -pri|-pub [-fix] [-detailed] [-verbose] [-l logfilename] -test testname[[, testname]…]
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 2003,2007 database, it has been deprecated from Exchange server 2010 SP1. This means users of Exchange 2010 SP1 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.
Here’s how to use this cmdlet:
New-MailboxRepairRequest -Mailbox <MailboxIdParameter> [-Archive <SwitchParameter>] <COMMON PARAMETERS>
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, ISINTEG is not working or fails 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. The tool supports exchange server versions from 5.5, 2007, 2010, until 2019.
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.
I think ISInteg is not a suitable approach to repair corrupt mailboxes in Exchange 2010.
Give a try using a mentioned below command:New-MailboxRepairRequest -Database
It works but doesn’t ensure 100% result in all cases.
But, a third party tool always gives a better result.
Isinteg.exe did not work however the the New-MailboxRepairRequest cmdlet did the magic.
But, we suggest using the manual methods under the supervision of experts.
Please share any reference for repairing Exchange Server 2010 database by using ESEUtil method.
Check out the article: Read More
Is it possible to compare the performance of these tools (ISInteg.exe, ESEUtil.exe and Stellar Repair for Exchange)?
You can try free demo of Stellar Repair for Exchange for comparative analysis with ISInteg.exe and ESEUtil.exe.
I have Exchange 2016 and am not able to find this tool, can you please tell me where it’s located?