Details on how to run ESEUTIL for exchange 2000.

By Fvillasenor ·
I need to defrag our exchange stores which are larger than the space currently available on the servers c:drive. Can someone give me detailed instructions on how to run the ESEUTIL for exchange 2000?


This conversation is currently closed to new comments.

Thread display: Collapse - | Expand +

All Answers

Collapse -

Need space

by Churdoo In reply to Details on how to run ESE ...

Well if you don't have enough free space to temporarily hold the defragged .edb, then you have a problem.

How close is the space on c I assume since you mentioned C:, that is where your PRIV and PUB databases reside. If you can free up more space on c:, so there's as much free space as your PRIV database is in size, that's safest. If it's close, well presumably the defragged database will be smaller, and may still make it.

Let's put the capacity problem aside for a moment, the process is:
Go into Exchange System Manager, dig down to Administrative Groups / First Administrative Group / Servers / <your server name> / First Storage Group / Mailbox Store, and stop the Mailbox Store. NOTE: this WILL kill anyone's live Outlook session or OWA for the duration of the DEFRAG.

Open a CMD prompt and CD to the location of the stores, which in your case is probably c:\program files\exchsrvr\mdbdata.

Since the path to ESEUTIL is not typically in your path, run the command
PATH=%PATH%;c:\program files\exchsrvr\bin so you can find ESEUTIL.

Next, the defrag:
ESEUTIL /D priv1.edb
This will essentially start copying the database into a new database, thereby defragging it. So during the defrag, another copy of the database is created, that's why the space need. This copy may take a few hours depending on the size of the database, so clearly something you want to do outside of normal Production hours.

During the defrag, the original database files (the .edb and .stm) are READ and copied to a TEMP database; Once the copy is completed successfully, the original database is renamed, the temp database is renamed to the production database, and finally the original (renamed) database is deleted. If the drive runs out of capacity during the defrag, the job will fail, but the original database is left intact.

If you can't get enough capactity on C:, then you need to somehow get that capacity, even temporarily. In extreme cases, I have moved the databases to another computer that had enough capacity, and run the defrag either across the network or locally on the other machine. I don't recommend running the defrag over a network share, again I said this was an extreme case.

Also let's not forget ...Backup backup backup. Make sure you make a good backup before you start, in fact, this may help your capacity problem as a good backup will flush logfiles that may be holding the capacity that you need. When the defrag is complete, do another backup.

That's enough for now. If you have any other specific questions, post back.

Collapse -

No space on local c:

by Fvillasenor In reply to Need space

Firt off - thank you for the response. Ok, I have a total of 3 storage groups containing a combined 10 mailstores (averaging 29G ea)distributed among 4 drives which are SAN attached, E:, G:, H:, and I: with I: being the only drive with enough free space (246G) to handle the defrag. Considering the scenerio - how would you go about running ESEUTIL? do I copy one edb at a time onto the I: drive and run the utility? If yes, do I need to copy and run the utility from I
Your imput is appreciated, this will be my first attempt at running eseutil and I can't afford to muck it up - thanks!

Collapse -

I see, said the blind man

by Churdoo In reply to No space on local c:

I misunderstood the original post, and thought that your store(s) were on C:

The easiest, is if the volume on which the store resides has enough capacity to hold another copy of the store to be defragged. ESEUTIL creates the TEMP defragged store in the same path as the original.

If that's not the case, then yes, once stopping the respective store, I have simply copied the priv1.* files to a volume with sufficient capacity, and have run eseutil /d on the relocated database, and copied the resultant database files back to the original location. Definitely back up before AND after if you go this route, to keep the logs flushed.

You don't necessarily need to copy the eseutil exe to your I: drive, just append the path to the eseutil.exe to your PATH so it can be found by the cmd prompt.

However, I don't like copying 29GB mailbox stores around the place, so since you asked what I would do in your specific scenario, my answer is:
I would use the Exchange functionality to MOVE a store off of each of the full volumes onto the I: drive, thereby freeing up one store's worth of capacity from each volume. once sufficient capacity, I would run the ESEUTIL /D in succession on the stores on any given volume.
In other words, if your E: is holding, say 3 stores but does not have capacity for a defrag, I would MOVE one of the stores to I: (in the properties of the store, change the path to the db files, which will safely relocate the store). Once one store is relocated, there's sufficient capacity on E: to ESEUTIL /D the stores remaining on E: in succession. I would then ESEUTIL /D the relocated store on I: before moving it back (or leave it on I: to facilitate future defrags).

Collapse -

I am almost there! bare with me

by Fvillasenor In reply to I see, said the blind man

Ok, I like your suggestion. A few more questions, if you don't mind. When I relocate the priv*.edb to a temp location (to free space) do I also relocate the associated *.stm?
2)When I am done defragging all other db's in the Storage group, do I point the relocated db back to it's original location?

And if I understood you correctly, the above relocation is done simply by going into ESM\StorageGroup\Mailstore\properties\databas\ExchangeDatabase\Browse\temp location (IN MY CASE the temp location I will redirect to will be the I: drive?

Thank you

Collapse -

ESM will move the files

by Churdoo In reply to I am almost there! bare w ...

Relocating the store using ESM\StorageGroup\Mailstore\properties\databas\ExchangeDatabase will move the .edb and .stm by itself and you won't have to. ESM will dismount the store, copy the respective files, and remount the store.

Collapse -

Your a good man!

by Fvillasenor In reply to ESM will move the files

Hey C!

I appreciate all of your help,

Thank you very much!


Collapse -


by ashwanitherock In reply to Details on how to run ESE ...

i want to know how its manage the buffer size of log file and how it recognize it.

Related Discussions

Related Forums