Link to home
Start Free TrialLog in
Avatar of AKTII-UK
AKTII-UK

asked on

Exchange 2003 Enterprise Defrag

Hi,

I would be grateful if anyone can point me in right direction.

I have Exchange 2003 Enterprise running on Windows 2003 Server and want to defrag the database.

The Exchange is installed on the default path C drive and the exchange database (Priv1.edb and Pub.edb) stored on the D drive.

When I started the defrag I used the following command:

C:\Program files\Exchsrvr\bin> eseutil /d D:\exchsrvr\mdbdata\priv1.edb

The defrag started and the dot started to move along as normal but after few hours I got an error message re the space on the C drive so I started the defrag again on the D drive where there’s plenty of space over 110% and specified the temporary file location for temp database and temp streaming file with the following command:

C:\Program files\Exchsrvr\bin> eseutil /d C:\exchsrvr\mdbdata\priv1.edb /t "D:\temp\" /s "D:\Temp"

few seconds later I got an error message

C:\Program Files\Exchsrvr\bin>ESEUTIL /D "D:\exchsrvr\mdbdata\priv1.edb" /t"d:\t
emp\"

Microsoft(R) Exchange Server Database Utilities
Version 6.5
Copyright (C) Microsoft Corporation. All Rights Reserved.

Initiating DEFRAGMENTATION mode...
            Database: D:\exchsrvr\mdbdata\priv1.edb
      Streaming File: D:\exchsrvr\mdbdata\priv1.STM
      Temp. Database: d:\temp"
Temp. Streaming File: d:\temp".STM

                  Defragmentation Status (% complete)

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


Operation terminated with error -1022 (JET_errDiskIO, Disk IO error) after 4.47
seconds.


I did google search regarding the error code but can’t find a solution.

Your help is much appreciated

Many thanks
Avatar of Alan Hardisty
Alan Hardisty
Flag of United Kingdom of Great Britain and Northern Ireland image

Okay - confused as to where your database resides as your two commands contradict each other.

Is the database on C: or D: ?

Command if the database is on D: should be:

eseutil /d d:\exchsrvr\mdbdata\priv1.edb /td:\temp\tempdfrg.edb

Try that and see if it works happily.
Could be an issue with the IOPs on the data drive.  As a test get a usb drive and try to point the temp file to it.
Avatar of AKTII-UK
AKTII-UK

ASKER

Hello Alan,

Thanks for your response, just to clarify, the databases are on the D drive. When i first tried to defrag it the temp files were being generated on the c drive and had the notification of the low disk space so  i ran the defrag again and used the switch to create the temp files on the D drive and that's when i got that error message.

Hello Paul,

i will try your suggestion and let you know how i get on.

thanks
As per your question:

When I started the defrag I used the following command:

C:\Program files\Exchsrvr\bin> eseutil /d D:\exchsrvr\mdbdata\priv1.edb

..... so I started the defrag again on the D drive where there’s plenty of space over 110% and specified the temporary file location for temp database and temp streaming file with the following command:

C:\Program files\Exchsrvr\bin> eseutil /d C:\exchsrvr\mdbdata\priv1.edb /t "D:\temp\" /s "D:\Temp"

Hopefully just a typo - but if not - that would cause you problems.
Alan,

sorry the first defrag i rang i used the following command. (without speficing the temp location)

C:\Program files\Exchsrvr\bin> eseutil /d D:\exchsrvr\mdbdata\priv1.edb

using this command it created the temp files into the c drive.

I then ran the defrag again using the switch to specify the temp location for the database (d drive), using the command below:

C:\Program files\Exchsrvr\bin> eseutil /d C:\exchsrvr\mdbdata\priv1.edb /t "D:\temp\" /s "D:\Temp"

this is where o got the error message. i hope this makes sense and clear from my original question.
Exactly - you specified the location of the database on the D: drive the first time and the C: drive the second time.

That could be the entire cause of your problem.

Look at the commands you have typed and the location of the database in both lines - you have pointed eseutil to a different location in the second command and if the database is on the D: drive, then you are telling eseutil to look on the C: for the database and to put the temp files on the D: drive - that is incorrect.
i am an idiot. Thanks for pointing that out, i'll re run the command when it's convenient and let you know how i got on.

thanks for pointing out the error. many thanks
ASKER CERTIFIED SOLUTION
Avatar of Alan Hardisty
Alan Hardisty
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Thanks to everyone for your suggestions.