Dirty Shutdown & eseutil utility

I've discovered that I have a bad database file for my exchange that is in a 
dirty shutodwn state. 

Most likely, my priv1.edb is all wacko - which of course, has caused my 
exchange email to pretty much shut down and will not let me mount the mailbox 
stores. 

Anyhow...I've been attempting to run the eseutil /r <log file name> command 
and it's not working because of a dirty shutdown. 

I found the database was in a dirty shutdown (vs. a clean shutdown) because 
I ran the eseutil /k priv1.edb and it told me. 

Here's a little nibble from the results: 
File: priv1.STM 
ERROR: database was not shutdown cleanly (dirty shutdown) 


Operation terminated with error -550 (JET_errDatabaseDirtyShutdown, Database 
was not shutdown cleanly. Recovery must first be run to properly complete 
database operations for the previous shutdown.) after 161.94 seconds. 

So, I run the eseutil /r priv1.edb to see if I can do a soft recovery and I 
get: 

Initiating RECOVERY mode... 
   Logfile base name: priv1.edb 
           Log files: <current directory> 
        System files: <current directory> 
Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
para 
meter) after 0.0 seconds. 

So I find out my database is in a dirty shutdown state.  I try to recover 
it, and it won't let me.  What do you think I should do next - or maybe I'm 
missing a step?  Btw, what would cause the dirty shutdown state in the first 
place? 
0
steve02a (19)
1/2/2006 9:12:02 AM
exchange.admin 57650 articles. 1 followers. Follow

13 Replies
1450 Views

Similar Articles

[PageSpeed] 51

On Mon, 2 Jan 2006 01:12:02 -0800, "steve02a"
<steve02a@discussions.microsoft.com> wrote:

>I've discovered that I have a bad database file for my exchange that is in a 
>dirty shutodwn state. 
>
>Most likely, my priv1.edb is all wacko - which of course, has caused my 
>exchange email to pretty much shut down and will not let me mount the mailbox 
>stores. 
>
>Anyhow...I've been attempting to run the eseutil /r <log file name> command 
>and it's not working because of a dirty shutdown. 
>
>I found the database was in a dirty shutdown (vs. a clean shutdown) because 
>I ran the eseutil /k priv1.edb and it told me. 
>
>Here's a little nibble from the results: 
>File: priv1.STM 
>ERROR: database was not shutdown cleanly (dirty shutdown) 
>
>
>Operation terminated with error -550 (JET_errDatabaseDirtyShutdown, Database 
>was not shutdown cleanly. Recovery must first be run to properly complete 
>database operations for the previous shutdown.) after 161.94 seconds. 
>
>So, I run the eseutil /r priv1.edb to see if I can do a soft recovery and I 
>get: 
>
>Initiating RECOVERY mode... 
>   Logfile base name: priv1.edb 
>           Log files: <current directory> 
>        System files: <current directory> 
>Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
>para 
>meter) after 0.0 seconds. 
>
>So I find out my database is in a dirty shutdown state.  I try to recover 
>it, and it won't let me.  What do you think I should do next - or maybe I'm 
>missing a step?  Btw, what would cause the dirty shutdown state in the first 
>place? 


Any good backups? 

0
adavid (8731)
1/2/2006 2:11:08 PM
Initiating RECOVERY mode... 
>   Logfile base name: priv1.edb 
>           Log files: <current directory> 
>        System files: <current directory> 
>Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
>para 
>meter) after 0.0 seconds. 

Invalid API Parameters means you don't have the correct syntax.
-- 
Jonathan
No Warrenties Implied, Did you do a FULL backup today??????




"Andy David - MVP" wrote:

> On Mon, 2 Jan 2006 01:12:02 -0800, "steve02a"
> <steve02a@discussions.microsoft.com> wrote:
> 
> >I've discovered that I have a bad database file for my exchange that is in a 
> >dirty shutodwn state. 
> >
> >Most likely, my priv1.edb is all wacko - which of course, has caused my 
> >exchange email to pretty much shut down and will not let me mount the mailbox 
> >stores. 
> >
> >Anyhow...I've been attempting to run the eseutil /r <log file name> command 
> >and it's not working because of a dirty shutdown. 
> >
> >I found the database was in a dirty shutdown (vs. a clean shutdown) because 
> >I ran the eseutil /k priv1.edb and it told me. 
> >
> >Here's a little nibble from the results: 
> >File: priv1.STM 
> >ERROR: database was not shutdown cleanly (dirty shutdown) 
> >
> >
> >Operation terminated with error -550 (JET_errDatabaseDirtyShutdown, Database 
> >was not shutdown cleanly. Recovery must first be run to properly complete 
> >database operations for the previous shutdown.) after 161.94 seconds. 
> >
> >So, I run the eseutil /r priv1.edb to see if I can do a soft recovery and I 
> >get: 
> >
> >Initiating RECOVERY mode... 
> >   Logfile base name: priv1.edb 
> >           Log files: <current directory> 
> >        System files: <current directory> 
> >Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
> >para 
> >meter) after 0.0 seconds. 
> >
> >So I find out my database is in a dirty shutdown state.  I try to recover 
> >it, and it won't let me.  What do you think I should do next - or maybe I'm 
> >missing a step?  Btw, what would cause the dirty shutdown state in the first 
> >place? 
> 
> 
> Any good backups? 
> 
> 
0
1/2/2006 4:07:03 PM
On Mon, 2 Jan 2006 08:07:03 -0800, Jonathan Norris
<JonathanNorris@discussions.microsoft.com> wrote:

>Initiating RECOVERY mode... 
>>   Logfile base name: priv1.edb 
>>           Log files: <current directory> 
>>        System files: <current directory> 
>>Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
>>para 
>>meter) after 0.0 seconds. 
>
>Invalid API Parameters means you don't have the correct syntax.


	Running eseutil should be the last resort however. Soft
recovery doesnt always work and it assumes you have the correct logs
in place. 



0
adavid (8731)
1/2/2006 4:12:02 PM
If you don't have a known good backup you may consider calling PSS Support to 
walk you through the process of mounting an empty DB and then help you in 
trying to recover the existing databases using ESEUTIL and mounting it as a 
Recovery Storage Group DB.

You can then merge it back into the production store.  At least then your 
users can send and receive mail while you try to recover the original DB.

As Andy stated ESEUTIL is a last resort, if you have a good backup you can 
either redirect it to a RSG or overwrite the existing production store.

Are your Logs and Databases and System Files in the same location?




-- 
Jonathan
No Warrenties Implied, Did you do a FULL backup today??????




"Andy David - MVP" wrote:

> On Mon, 2 Jan 2006 08:07:03 -0800, Jonathan Norris
> <JonathanNorris@discussions.microsoft.com> wrote:
> 
> >Initiating RECOVERY mode... 
> >>   Logfile base name: priv1.edb 
> >>           Log files: <current directory> 
> >>        System files: <current directory> 
> >>Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
> >>para 
> >>meter) after 0.0 seconds. 
> >
> >Invalid API Parameters means you don't have the correct syntax.
> 
> 
> 	Running eseutil should be the last resort however. Soft
> recovery doesnt always work and it assumes you have the correct logs
> in place. 
> 
> 
> 
> 
0
1/2/2006 5:11:02 PM
Unfortunetly, I have no backup at all which is why I've been learning about 
this eseutil utility.  As far as I know, my db's and logs are all in the same 
folder - the the C:\Program Files\Exchsrvr\MDBDATA\ folder.

I really don't want to use the eseutil /P feature...it's almost like I've 
read on MS websites that sure, it'll help, but also produce consequences too.

"Jonathan Norris" wrote:

> If you don't have a known good backup you may consider calling PSS Support to 
> walk you through the process of mounting an empty DB and then help you in 
> trying to recover the existing databases using ESEUTIL and mounting it as a 
> Recovery Storage Group DB.
> 
> You can then merge it back into the production store.  At least then your 
> users can send and receive mail while you try to recover the original DB.
> 
> As Andy stated ESEUTIL is a last resort, if you have a good backup you can 
> either redirect it to a RSG or overwrite the existing production store.
> 
> Are your Logs and Databases and System Files in the same location?
> 
> 
> 
> 
> -- 
> Jonathan
> No Warrenties Implied, Did you do a FULL backup today??????
> 
> 
> 
> 
> "Andy David - MVP" wrote:
> 
> > On Mon, 2 Jan 2006 08:07:03 -0800, Jonathan Norris
> > <JonathanNorris@discussions.microsoft.com> wrote:
> > 
> > >Initiating RECOVERY mode... 
> > >>   Logfile base name: priv1.edb 
> > >>           Log files: <current directory> 
> > >>        System files: <current directory> 
> > >>Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
> > >>para 
> > >>meter) after 0.0 seconds. 
> > >
> > >Invalid API Parameters means you don't have the correct syntax.
> > 
> > 
> > 	Running eseutil should be the last resort however. Soft
> > recovery doesnt always work and it assumes you have the correct logs
> > in place. 
> > 
> > 
> > 
> > 
0
steve02a (19)
1/2/2006 5:33:02 PM
Btw, what's PSS Support?

I did run across an article on MS's website talking about creating a new DB 
and then just slowly migrating everything over.  Yea, it'd be a lot easier 
w/someone on the phone guiding me than reading that website I found...



"Jonathan Norris" wrote:

> If you don't have a known good backup you may consider calling PSS Support to 
> walk you through the process of mounting an empty DB and then help you in 
> trying to recover the existing databases using ESEUTIL and mounting it as a 
> Recovery Storage Group DB.
> 
> You can then merge it back into the production store.  At least then your 
> users can send and receive mail while you try to recover the original DB.
> 
> As Andy stated ESEUTIL is a last resort, if you have a good backup you can 
> either redirect it to a RSG or overwrite the existing production store.
> 
> Are your Logs and Databases and System Files in the same location?
> 
> 
> 
> 
> -- 
> Jonathan
> No Warrenties Implied, Did you do a FULL backup today??????
> 
> 
> 
> 
> "Andy David - MVP" wrote:
> 
> > On Mon, 2 Jan 2006 08:07:03 -0800, Jonathan Norris
> > <JonathanNorris@discussions.microsoft.com> wrote:
> > 
> > >Initiating RECOVERY mode... 
> > >>   Logfile base name: priv1.edb 
> > >>           Log files: <current directory> 
> > >>        System files: <current directory> 
> > >>Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
> > >>para 
> > >>meter) after 0.0 seconds. 
> > >
> > >Invalid API Parameters means you don't have the correct syntax.
> > 
> > 
> > 	Running eseutil should be the last resort however. Soft
> > recovery doesnt always work and it assumes you have the correct logs
> > in place. 
> > 
> > 
> > 
> > 
0
steve02a (19)
1/2/2006 5:40:03 PM
Yes ESEUTIL/P could result in mail loss. What you could do is make an offline 
copy of the logs and DBs so you can revert back.

You may not have a choice.  Here is a document for dialtone restore using 
RSGs.  It will help you at least on the recovery bit, there are multiple 
parts of the document.

http://www.msexchange.org/tutorials/Exchange-Dial-tone-Restore-Method-Part1.html

If you have users that need to send mail you can at least mount an empty 
store so they can send a recieve.  From there you can try to run ESEUTIL 
against the RSG db that has been replaced with the damaged DB.  If/once you 
get the DB repaired you can then merge it back into the new store.

With 2003 I have had much better luck with ESEUTIL than the earlier versions 
of Exchange.

If you are not very knowlegeable with Exchange DR you should call PSS and 
they will walk you through the entire process.  It may cost you $$ but it 
should help you recover your mail. At least you can tell your end users you 
tried everything;)

Basically the high level steps are (I would still call PSS);

1. Copy the store to another location 
2. Rename the original store files with the .old extension
3.  Mount the store, you will get the warning that you are mounting an empty 
store.
4. Create a Recovery Storage Group
5. Create a Recovery Storage Group DB pointing it to the damaged store.
6. Select this store can be overwritten by a restore for the RSG DB, don't 
mount the RSG DB.
7. Replace the RSG Store with the damaged DB (Making sure you still have 
another copy some where)
8. Try to mount, it shouldn't mount
9. Run ESEUTIL /r and then ESEUTIL /p
10. Try to mount the DB, if it mounts you can then proceed with Dialtone 
recovery steps.

Keep in mind with ESEUTIL /p you will need 2X disk space for the temp DB.  
Also make sure you put in the Temp DB Location.

Usually ESEUTIL /p will work, however it can result in mail loss.
 
Also you should consider turning off Anti Virus during this process.

Hope this helps!
-- 
Jonathan
No Warrenties Implied, Did you do a FULL backup today??????




"steve02a" wrote:

> Unfortunetly, I have no backup at all which is why I've been learning about 
> this eseutil utility.  As far as I know, my db's and logs are all in the same 
> folder - the the C:\Program Files\Exchsrvr\MDBDATA\ folder.
> 
> I really don't want to use the eseutil /P feature...it's almost like I've 
> read on MS websites that sure, it'll help, but also produce consequences too.
> 
> "Jonathan Norris" wrote:
> 
> > If you don't have a known good backup you may consider calling PSS Support to 
> > walk you through the process of mounting an empty DB and then help you in 
> > trying to recover the existing databases using ESEUTIL and mounting it as a 
> > Recovery Storage Group DB.
> > 
> > You can then merge it back into the production store.  At least then your 
> > users can send and receive mail while you try to recover the original DB.
> > 
> > As Andy stated ESEUTIL is a last resort, if you have a good backup you can 
> > either redirect it to a RSG or overwrite the existing production store.
> > 
> > Are your Logs and Databases and System Files in the same location?
> > 
> > 
> > 
> > 
> > -- 
> > Jonathan
> > No Warrenties Implied, Did you do a FULL backup today??????
> > 
> > 
> > 
> > 
> > "Andy David - MVP" wrote:
> > 
> > > On Mon, 2 Jan 2006 08:07:03 -0800, Jonathan Norris
> > > <JonathanNorris@discussions.microsoft.com> wrote:
> > > 
> > > >Initiating RECOVERY mode... 
> > > >>   Logfile base name: priv1.edb 
> > > >>           Log files: <current directory> 
> > > >>        System files: <current directory> 
> > > >>Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
> > > >>para 
> > > >>meter) after 0.0 seconds. 
> > > >
> > > >Invalid API Parameters means you don't have the correct syntax.
> > > 
> > > 
> > > 	Running eseutil should be the last resort however. Soft
> > > recovery doesnt always work and it assumes you have the correct logs
> > > in place. 
> > > 
> > > 
> > > 
> > > 
0
1/2/2006 6:01:02 PM
Microsoft Professional Support Services, basically phone support.  They can 
help walk you through the issue and work with you on repairing your DB.

http://support.microsoft.com/?LN=en-us&scid=gp%3Ben-us%3Bofferprophone&x=11&y=9
-- 
Jonathan
No Warrenties Implied, Did you do a FULL backup today??????




"steve02a" wrote:

> Btw, what's PSS Support?
> 
> I did run across an article on MS's website talking about creating a new DB 
> and then just slowly migrating everything over.  Yea, it'd be a lot easier 
> w/someone on the phone guiding me than reading that website I found...
> 
> 
> 
> "Jonathan Norris" wrote:
> 
> > If you don't have a known good backup you may consider calling PSS Support to 
> > walk you through the process of mounting an empty DB and then help you in 
> > trying to recover the existing databases using ESEUTIL and mounting it as a 
> > Recovery Storage Group DB.
> > 
> > You can then merge it back into the production store.  At least then your 
> > users can send and receive mail while you try to recover the original DB.
> > 
> > As Andy stated ESEUTIL is a last resort, if you have a good backup you can 
> > either redirect it to a RSG or overwrite the existing production store.
> > 
> > Are your Logs and Databases and System Files in the same location?
> > 
> > 
> > 
> > 
> > -- 
> > Jonathan
> > No Warrenties Implied, Did you do a FULL backup today??????
> > 
> > 
> > 
> > 
> > "Andy David - MVP" wrote:
> > 
> > > On Mon, 2 Jan 2006 08:07:03 -0800, Jonathan Norris
> > > <JonathanNorris@discussions.microsoft.com> wrote:
> > > 
> > > >Initiating RECOVERY mode... 
> > > >>   Logfile base name: priv1.edb 
> > > >>           Log files: <current directory> 
> > > >>        System files: <current directory> 
> > > >>Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
> > > >>para 
> > > >>meter) after 0.0 seconds. 
> > > >
> > > >Invalid API Parameters means you don't have the correct syntax.
> > > 
> > > 
> > > 	Running eseutil should be the last resort however. Soft
> > > recovery doesnt always work and it assumes you have the correct logs
> > > in place. 
> > > 
> > > 
> > > 
> > > 
0
1/2/2006 6:08:06 PM
I'll check out that website from msexchange.org.  I have no problem calling 
someone for support that'll cost money - my boss is paying for it.  
Thankfully, nobody is working today so I have till Tuesday morning to have 
this running again.

What's PSS?  the company you work for?  Got any contact info?

Now created a new db so users can send/get email is fine w/me while I work 
in the background migrating from crappy db to new db.



"Jonathan Norris" wrote:

> Yes ESEUTIL/P could result in mail loss. What you could do is make an offline 
> copy of the logs and DBs so you can revert back.
> 
> You may not have a choice.  Here is a document for dialtone restore using 
> RSGs.  It will help you at least on the recovery bit, there are multiple 
> parts of the document.
> 
> http://www.msexchange.org/tutorials/Exchange-Dial-tone-Restore-Method-Part1.html
> 
> If you have users that need to send mail you can at least mount an empty 
> store so they can send a recieve.  From there you can try to run ESEUTIL 
> against the RSG db that has been replaced with the damaged DB.  If/once you 
> get the DB repaired you can then merge it back into the new store.
> 
> With 2003 I have had much better luck with ESEUTIL than the earlier versions 
> of Exchange.
> 
> If you are not very knowlegeable with Exchange DR you should call PSS and 
> they will walk you through the entire process.  It may cost you $$ but it 
> should help you recover your mail. At least you can tell your end users you 
> tried everything;)
> 
> Basically the high level steps are (I would still call PSS);
> 
> 1. Copy the store to another location 
> 2. Rename the original store files with the .old extension
> 3.  Mount the store, you will get the warning that you are mounting an empty 
> store.
> 4. Create a Recovery Storage Group
> 5. Create a Recovery Storage Group DB pointing it to the damaged store.
> 6. Select this store can be overwritten by a restore for the RSG DB, don't 
> mount the RSG DB.
> 7. Replace the RSG Store with the damaged DB (Making sure you still have 
> another copy some where)
> 8. Try to mount, it shouldn't mount
> 9. Run ESEUTIL /r and then ESEUTIL /p
> 10. Try to mount the DB, if it mounts you can then proceed with Dialtone 
> recovery steps.
> 
> Keep in mind with ESEUTIL /p you will need 2X disk space for the temp DB.  
> Also make sure you put in the Temp DB Location.
> 
> Usually ESEUTIL /p will work, however it can result in mail loss.
>  
> Also you should consider turning off Anti Virus during this process.
> 
> Hope this helps!
> -- 
> Jonathan
> No Warrenties Implied, Did you do a FULL backup today??????
> 
> 
> 
> 
> "steve02a" wrote:
> 
> > Unfortunetly, I have no backup at all which is why I've been learning about 
> > this eseutil utility.  As far as I know, my db's and logs are all in the same 
> > folder - the the C:\Program Files\Exchsrvr\MDBDATA\ folder.
> > 
> > I really don't want to use the eseutil /P feature...it's almost like I've 
> > read on MS websites that sure, it'll help, but also produce consequences too.
> > 
> > "Jonathan Norris" wrote:
> > 
> > > If you don't have a known good backup you may consider calling PSS Support to 
> > > walk you through the process of mounting an empty DB and then help you in 
> > > trying to recover the existing databases using ESEUTIL and mounting it as a 
> > > Recovery Storage Group DB.
> > > 
> > > You can then merge it back into the production store.  At least then your 
> > > users can send and receive mail while you try to recover the original DB.
> > > 
> > > As Andy stated ESEUTIL is a last resort, if you have a good backup you can 
> > > either redirect it to a RSG or overwrite the existing production store.
> > > 
> > > Are your Logs and Databases and System Files in the same location?
> > > 
> > > 
> > > 
> > > 
> > > -- 
> > > Jonathan
> > > No Warrenties Implied, Did you do a FULL backup today??????
> > > 
> > > 
> > > 
> > > 
> > > "Andy David - MVP" wrote:
> > > 
> > > > On Mon, 2 Jan 2006 08:07:03 -0800, Jonathan Norris
> > > > <JonathanNorris@discussions.microsoft.com> wrote:
> > > > 
> > > > >Initiating RECOVERY mode... 
> > > > >>   Logfile base name: priv1.edb 
> > > > >>           Log files: <current directory> 
> > > > >>        System files: <current directory> 
> > > > >>Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
> > > > >>para 
> > > > >>meter) after 0.0 seconds. 
> > > > >
> > > > >Invalid API Parameters means you don't have the correct syntax.
> > > > 
> > > > 
> > > > 	Running eseutil should be the last resort however. Soft
> > > > recovery doesnt always work and it assumes you have the correct logs
> > > > in place. 
> > > > 
> > > > 
> > > > 
> > > > 
0
steve02a (19)
1/2/2006 6:13:02 PM
I think I'm starting to lean toward the process of creating a new blank 
mailbox store.  At least that'll mount and my users can send/get email.  
That'll hold them off from knocking down my door while I restore data from my 
dirty shutdown wacko dabatabase to the new one that's empty.

If anyone knows a good, effecient way of doing this, please let me know.  It 
seems as though I've read over 100 articles on every error issue you can get 
with exchange and it's all confusing to a point.

I'd like to at least try this method before I spend a couple hundred of my 
bosses money.



"Jonathan Norris" wrote:

> Yes ESEUTIL/P could result in mail loss. What you could do is make an offline 
> copy of the logs and DBs so you can revert back.
> 
> You may not have a choice.  Here is a document for dialtone restore using 
> RSGs.  It will help you at least on the recovery bit, there are multiple 
> parts of the document.
> 
> http://www.msexchange.org/tutorials/Exchange-Dial-tone-Restore-Method-Part1.html
> 
> If you have users that need to send mail you can at least mount an empty 
> store so they can send a recieve.  From there you can try to run ESEUTIL 
> against the RSG db that has been replaced with the damaged DB.  If/once you 
> get the DB repaired you can then merge it back into the new store.
> 
> With 2003 I have had much better luck with ESEUTIL than the earlier versions 
> of Exchange.
> 
> If you are not very knowlegeable with Exchange DR you should call PSS and 
> they will walk you through the entire process.  It may cost you $$ but it 
> should help you recover your mail. At least you can tell your end users you 
> tried everything;)
> 
> Basically the high level steps are (I would still call PSS);
> 
> 1. Copy the store to another location 
> 2. Rename the original store files with the .old extension
> 3.  Mount the store, you will get the warning that you are mounting an empty 
> store.
> 4. Create a Recovery Storage Group
> 5. Create a Recovery Storage Group DB pointing it to the damaged store.
> 6. Select this store can be overwritten by a restore for the RSG DB, don't 
> mount the RSG DB.
> 7. Replace the RSG Store with the damaged DB (Making sure you still have 
> another copy some where)
> 8. Try to mount, it shouldn't mount
> 9. Run ESEUTIL /r and then ESEUTIL /p
> 10. Try to mount the DB, if it mounts you can then proceed with Dialtone 
> recovery steps.
> 
> Keep in mind with ESEUTIL /p you will need 2X disk space for the temp DB.  
> Also make sure you put in the Temp DB Location.
> 
> Usually ESEUTIL /p will work, however it can result in mail loss.
>  
> Also you should consider turning off Anti Virus during this process.
> 
> Hope this helps!
> -- 
> Jonathan
> No Warrenties Implied, Did you do a FULL backup today??????
> 
> 
> 
> 
> "steve02a" wrote:
> 
> > Unfortunetly, I have no backup at all which is why I've been learning about 
> > this eseutil utility.  As far as I know, my db's and logs are all in the same 
> > folder - the the C:\Program Files\Exchsrvr\MDBDATA\ folder.
> > 
> > I really don't want to use the eseutil /P feature...it's almost like I've 
> > read on MS websites that sure, it'll help, but also produce consequences too.
> > 
> > "Jonathan Norris" wrote:
> > 
> > > If you don't have a known good backup you may consider calling PSS Support to 
> > > walk you through the process of mounting an empty DB and then help you in 
> > > trying to recover the existing databases using ESEUTIL and mounting it as a 
> > > Recovery Storage Group DB.
> > > 
> > > You can then merge it back into the production store.  At least then your 
> > > users can send and receive mail while you try to recover the original DB.
> > > 
> > > As Andy stated ESEUTIL is a last resort, if you have a good backup you can 
> > > either redirect it to a RSG or overwrite the existing production store.
> > > 
> > > Are your Logs and Databases and System Files in the same location?
> > > 
> > > 
> > > 
> > > 
> > > -- 
> > > Jonathan
> > > No Warrenties Implied, Did you do a FULL backup today??????
> > > 
> > > 
> > > 
> > > 
> > > "Andy David - MVP" wrote:
> > > 
> > > > On Mon, 2 Jan 2006 08:07:03 -0800, Jonathan Norris
> > > > <JonathanNorris@discussions.microsoft.com> wrote:
> > > > 
> > > > >Initiating RECOVERY mode... 
> > > > >>   Logfile base name: priv1.edb 
> > > > >>           Log files: <current directory> 
> > > > >>        System files: <current directory> 
> > > > >>Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
> > > > >>para 
> > > > >>meter) after 0.0 seconds. 
> > > > >
> > > > >Invalid API Parameters means you don't have the correct syntax.
> > > > 
> > > > 
> > > > 	Running eseutil should be the last resort however. Soft
> > > > recovery doesnt always work and it assumes you have the correct logs
> > > > in place. 
> > > > 
> > > > 
> > > > 
> > > > 
0
steve02a (19)
1/2/2006 6:39:02 PM
I just wanted to stop here and say my issue has been fixed and my email is up 
and running fine now.  

My Resolution was:

Ran the eseutil /p frorm the BIN folder and repaired  both the priv1.edb and 
pub1.edb files.
Deleted the log and chk files.
Ran a defrag on the stores . eseutil /d
Ran isinteg (isinteg -s servername -fix -test alltests) frorm the bin folder.
Mounted the stores.

I was weary about running the eseutil /p because I've read horror stories 
about using it, but it worked out fine for me and it was my last resort too, 
since I didn't have a good back up (but I do now).  I hope someone can use 
this in the future if they run into the same situation I did.


"steve02a" wrote:

> I've discovered that I have a bad database file for my exchange that is in a 
> dirty shutodwn state. 
> 
> Most likely, my priv1.edb is all wacko - which of course, has caused my 
> exchange email to pretty much shut down and will not let me mount the mailbox 
> stores. 
> 
> Anyhow...I've been attempting to run the eseutil /r <log file name> command 
> and it's not working because of a dirty shutdown. 
> 
> I found the database was in a dirty shutdown (vs. a clean shutdown) because 
> I ran the eseutil /k priv1.edb and it told me. 
> 
> Here's a little nibble from the results: 
> File: priv1.STM 
> ERROR: database was not shutdown cleanly (dirty shutdown) 
> 
> 
> Operation terminated with error -550 (JET_errDatabaseDirtyShutdown, Database 
> was not shutdown cleanly. Recovery must first be run to properly complete 
> database operations for the previous shutdown.) after 161.94 seconds. 
> 
> So, I run the eseutil /r priv1.edb to see if I can do a soft recovery and I 
> get: 
> 
> Initiating RECOVERY mode... 
>    Logfile base name: priv1.edb 
>            Log files: <current directory> 
>         System files: <current directory> 
> Operation terminated with error -1003 (JET_errInvalidParameter, Invalid API 
> para 
> meter) after 0.0 seconds. 
> 
> So I find out my database is in a dirty shutdown state.  I try to recover 
> it, and it won't let me.  What do you think I should do next - or maybe I'm 
> missing a step?  Btw, what would cause the dirty shutdown state in the first 
> place? 
0
steve02a (19)
1/3/2006 12:35:03 AM
Thank you and GOD because I just have the same situation like you, I have No 
backup !!! I will try to do as you instruction. Thanks

"steve02a" <steve02a@discussions.microsoft.com> wrote in message 
news:2F9390B8-792E-4BE7-9663-993F0FD0D797@microsoft.com...
>I just wanted to stop here and say my issue has been fixed and my email is 
>up
> and running fine now.
>
> My Resolution was:
>
> Ran the eseutil /p frorm the BIN folder and repaired  both the priv1.edb 
> and
> pub1.edb files.
> Deleted the log and chk files.
> Ran a defrag on the stores . eseutil /d
> Ran isinteg (isinteg -s servername -fix -test alltests) frorm the bin 
> folder.
> Mounted the stores.
>
> I was weary about running the eseutil /p because I've read horror stories
> about using it, but it worked out fine for me and it was my last resort 
> too,
> since I didn't have a good back up (but I do now).  I hope someone can use
> this in the future if they run into the same situation I did.
>
>
> "steve02a" wrote:
>
>> I've discovered that I have a bad database file for my exchange that is 
>> in a
>> dirty shutodwn state.
>>
>> Most likely, my priv1.edb is all wacko - which of course, has caused my
>> exchange email to pretty much shut down and will not let me mount the 
>> mailbox
>> stores.
>>
>> Anyhow...I've been attempting to run the eseutil /r <log file name> 
>> command
>> and it's not working because of a dirty shutdown.
>>
>> I found the database was in a dirty shutdown (vs. a clean shutdown) 
>> because
>> I ran the eseutil /k priv1.edb and it told me.
>>
>> Here's a little nibble from the results:
>> File: priv1.STM
>> ERROR: database was not shutdown cleanly (dirty shutdown)
>>
>>
>> Operation terminated with error -550 (JET_errDatabaseDirtyShutdown, 
>> Database
>> was not shutdown cleanly. Recovery must first be run to properly complete
>> database operations for the previous shutdown.) after 161.94 seconds.
>>
>> So, I run the eseutil /r priv1.edb to see if I can do a soft recovery and 
>> I
>> get:
>>
>> Initiating RECOVERY mode...
>>    Logfile base name: priv1.edb
>>            Log files: <current directory>
>>         System files: <current directory>
>> Operation terminated with error -1003 (JET_errInvalidParameter, Invalid 
>> API
>> para
>> meter) after 0.0 seconds.
>>
>> So I find out my database is in a dirty shutdown state.  I try to recover
>> it, and it won't let me.  What do you think I should do next - or maybe 
>> I'm
>> missing a step?  Btw, what would cause the dirty shutdown state in the 
>> first
>> place? 


0
khoa.le1 (20)
1/3/2006 4:40:39 AM
Just remember that running the eseutil /P can cost you data loss.  Using the 
/P can wipe out an entire database or it couldn't wipe out a thing - depends 
on how much you have corrupt.

It takes a while doing the /P and /d.  My files were only about 8GB and it 
took about 40 minutes.  Imagine what it's like if you're file is like 
30-40GB.  I remember before running the /P, I turned off Microsoft Exchange 
Information Store service and copied the entire C:\Program 
Files\Exchsrvr\MDBDATA folder to another drive, just in-case the eseutil /p 
went all nuts on me, I'd have at least a junky backup of the files.

Good luck your fixing.


"Newbievn" wrote:

> Thank you and GOD because I just have the same situation like you, I have No 
> backup !!! I will try to do as you instruction. Thanks
> 
> "steve02a" <steve02a@discussions.microsoft.com> wrote in message 
> news:2F9390B8-792E-4BE7-9663-993F0FD0D797@microsoft.com...
> >I just wanted to stop here and say my issue has been fixed and my email is 
> >up
> > and running fine now.
> >
> > My Resolution was:
> >
> > Ran the eseutil /p frorm the BIN folder and repaired  both the priv1.edb 
> > and
> > pub1.edb files.
> > Deleted the log and chk files.
> > Ran a defrag on the stores . eseutil /d
> > Ran isinteg (isinteg -s servername -fix -test alltests) frorm the bin 
> > folder.
> > Mounted the stores.
> >
> > I was weary about running the eseutil /p because I've read horror stories
> > about using it, but it worked out fine for me and it was my last resort 
> > too,
> > since I didn't have a good back up (but I do now).  I hope someone can use
> > this in the future if they run into the same situation I did.
> >
> >
> > "steve02a" wrote:
> >
> >> I've discovered that I have a bad database file for my exchange that is 
> >> in a
> >> dirty shutodwn state.
> >>
> >> Most likely, my priv1.edb is all wacko - which of course, has caused my
> >> exchange email to pretty much shut down and will not let me mount the 
> >> mailbox
> >> stores.
> >>
> >> Anyhow...I've been attempting to run the eseutil /r <log file name> 
> >> command
> >> and it's not working because of a dirty shutdown.
> >>
> >> I found the database was in a dirty shutdown (vs. a clean shutdown) 
> >> because
> >> I ran the eseutil /k priv1.edb and it told me.
> >>
> >> Here's a little nibble from the results:
> >> File: priv1.STM
> >> ERROR: database was not shutdown cleanly (dirty shutdown)
> >>
> >>
> >> Operation terminated with error -550 (JET_errDatabaseDirtyShutdown, 
> >> Database
> >> was not shutdown cleanly. Recovery must first be run to properly complete
> >> database operations for the previous shutdown.) after 161.94 seconds.
> >>
> >> So, I run the eseutil /r priv1.edb to see if I can do a soft recovery and 
> >> I
> >> get:
> >>
> >> Initiating RECOVERY mode...
> >>    Logfile base name: priv1.edb
> >>            Log files: <current directory>
> >>         System files: <current directory>
> >> Operation terminated with error -1003 (JET_errInvalidParameter, Invalid 
> >> API
> >> para
> >> meter) after 0.0 seconds.
> >>
> >> So I find out my database is in a dirty shutdown state.  I try to recover
> >> it, and it won't let me.  What do you think I should do next - or maybe 
> >> I'm
> >> missing a step?  Btw, what would cause the dirty shutdown state in the 
> >> first
> >> place? 
> 
> 
> 
0
steve02a (19)
1/3/2006 4:11:02 PM
Reply:

Similar Artilces:

Me.Dirty
Okay, Here is the setup of this monster database that we're using. We have an Access frontend with SQL server backend. We have about 14 tables that all link to one main table via main table's PK. To present this data, we have forms that have 14 sub-forms on them (long story, but in order to get what we needed, this was how we got it to work). We have the SQL server residing on one server and then six laptops connect to that server via wireless router (again, due to the mobility of the laptops, it has to be wireless). So at one time, there are six users entering data, but never ...

Chelmsford Utility
One of my customers sent me and email with a file attached from Chelmsford_Utility_op4.xls. What is this, and how do I get it? You need to buy a third part add-in or a full program like Adobe Acrobat writer Regards, Peo Sjoblom "DaveB" wrote: > One of my customers sent me and email with a file > attached from Chelmsford_Utility_op4.xls. What is this, > and how do I get it? > Apologies, was meantfor another post, have no clue what this utility is Regards, Peo Sjoblom "Peo Sjoblom" wrote: > You need to buy a third part add-in or a full program li...

Form Dirty Property
I am having difficulty in exploiting the ‘On Dirty’ property of forms. Sometimes it works as expected but, more often than not, changes to controls bound to table fields fail to trigger the On Dirty event. I am then forced to associate each amendable control with an After Update event. That invariably works but, with a dozen or more amendable controls on a form, the resulting code can look pretty clumsy. There is something that I have clearly not understood. Can anyone enlighten me? I just want to take appropriate action when any control on a form is updated or amended. -- Peter ...

Utility to move transactions from one period to another
My client would like to move transactions from one period to another. In PM, POP and GL. Thanks, Andy Willams ---------------- This post is a suggestion for Microsoft, and Microsoft responds to the suggestions with the most votes. To vote for this suggestion, click the "I Agree" button in the message pane. If you do not see the button, follow this link to open the suggestion in the Microsoft Web-based Newsreader and then click "I Agree" in the message pane. http://www.microsoft.com/Businesssolutions/Community/NewsGroups/dgbrowser/en-us/default.mspx?mid=10aec5d2-3888-...

Dynamics GP Utilities
I am unable to view or enter any listed servers? Server: No servers listed User Id: sa Password: ********* Did you create your ODBC connection? "Terry" wrote: > I am unable to view or enter any listed servers? > > Server: No servers listed > User Id: sa > Password: ********* Should I create it for a USER or SYSTEM DSN? "jav" wrote: > Did you create your ODBC connection? > > "Terry" wrote: > > > I am unable to view or enter any listed servers? > > > > Server: No servers listed > > User Id: sa > > P...

Delete customer utility?
Does anyone have or know of a utility to make it easier to delete customers? We have years and years of history for many customers and would like to easily delete some old customers but there are SO many steps you must go through to delete one customer at a time. Years and Years of history? Why? Most firms find that more than 2-3 years of history is well enough for planning and research. If you occassionally need more, make an archival copy of your data or create a research only copy of your database. Then purge all history older than a couple of years. This should free up MOST o...

Exchange off line, and ESEUTIL error
Hi All, Earlier today, our Exchange 2003 server crashed. While the server itself didn't crash, Exchage did. It was acting flaky for about an hour before the crash. For instance, webmail was telling the users that their passwords has expired, but not accepting new passwords. At first we thought it was an AD problem, and rebooted the DCs, but it didn't help, and the results of different DCDIAG runs didn't show any problems. Then, nobody could send or receive email. About the time everything went down, I saw in the system event log that the messenger service startup type ...

How To Talk Dirty
Hi, Really cool to learn, but it's true for all dudes. 'How To Talk Dirty' (http://www.howtotalkdirty101.com) Talk Dirty -- womenops ...

HQ Item Import Utility
Hi, I am looking for import script or utility to import items for supplier into Rms HQ 2.0 Thanks Declan in case you want to Import it from Store DB try thihs: in the HQ admin., Database, Imort Store Operation Data. else, please send me exactly what do want ? you want to import it from tzt file, apart from other Databse... issamfe@hotmail.com "Deck" wrote: > Hi, > > I am looking for import script or utility to import items for supplier > into Rms HQ 2.0 > > Thanks > > Declan > Hi, We do have HQ item import utility (works with SO as well) You ...

Dirty Bits?
When I rebooted my computer (WinXP SP3) I got a bizarre message saying that "The volume is dirty," apparently in reference to my external hard drive. What the $%^& does this mean? And more particularly, must I do something about whatever is "dirty" about that drive? When I did a google search I found a reference to "setting the dirty bit," terminology which, I must admit, seems to have more to do with connubial delights than with my computer. of course, I also found ads hawking software which assuredly (yeah, sure) would fix this and any other...

Databse Utility
Good day, Quick question.....is there any database utility that can be used to connect to the RMS databse, pull the relevant information, and convert it to a CSV or Excel file . Then, after editing the csv or excel file.....convert it back into the RMS database......Any help would be greatly appreciated..... Best regards, Uttam Dookhran Excel can connect directly to the database. -- Thank you, Ryan Sakry Program Manager Retail Information Technology Enterprises (RITE) rsakry@rite.us http://www.rite.us 320-230-2282 ext. 4002 (Office) 320-230-1796 (Fax) "uttam" <uttam@d...

Dynamics Utilities Fails when upgrading to GP 9 Service Pack 3
We have a client that is attempting to load GP9 service pack 3. After the install is completed, the machine was rebooted and the dynamics utilites was ran. While utilities is running (the window states "Server Installation Progress"), an error message pops up stating "File Not Found C:\Program Files\Microsoft Dynamics\GP\SQL\Upgrade\2277\9.0.282\Driver.ini" After this error utilities does not complete and the install fails. I have looked at the directory on this machine and a 9.0.282 folder does not exist. Why is the upgrade looking for it and how can we proceed ...

dirty (?) footer
I have a form with several unbound field in it's footer (they will, after verification, be added to the recordset); I thought it would be nice to keep the "ADD" button disabled until the user has entered info into all of the fields... is there a simple way to add a check for this condition (all fields have data entered) on dirty... if len(field1 + field2 + field3 + ...) > 0 then me.add.enabled = true else me.add.enabled = false end if thanks in advance, -mark On Feb 20, 2:58 pm, "mark kubicki" <m...@tillotsondesign.com> wrot...

Money 2007 Registry Entry
The following message is received everytime I start and stop Money 2007. I use McAfee Firewall, etc. The odd part is that McAfee doesn't let me permanenetly accept this registtry change. Does anyone know what it is about and if it is really needed..Can I stop it from happening inside Money? Thanks Frank Process: C:\Program Files\Microsoft Money 2007\mnycorefiles\msmoney.exe Process Name: Microsoft Money Process Publisher: Microsoft(R) Corporation Affected Items: HKEY_USERS\S-1-5-21-3405039426-1754454779-3683679437-1006\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Z...

Only "localserver" is displayed in the GP Utilities login screen
We are running Windows 2003 Server 64-bit, SQL Server 2005 Standard 64-bit. I created two 32-bit ODBC system DSNs for the server INSTANCE02. One native sql client the other a standard SQL ODBC. Installed GP 9.0 per the installation checklist. Once I got to the GP Utilities only localserver was an option for server. I tested both ODBC system DSN and both were successful. Rebooted the server and still cannot see the ODBC entries I created in the GP Utilities login window. Is there something I'm missing? Recent KB article in MBS "The Server list is empty in the logon window of ...

Form Dirty not firing
I have a form that I enter and with the Load event I disable the Save button. I want the button to appear as soon as the form is dirty. I have done this before with no problems even with other forms in this same application. When I type in the first field, the Form Dirty event is not firing. I have a msgbox statement in the Form_Dirty event and it never appears. I have an AfterUpdate event on the first field and I test Me.Dirty in that code. Me.Dirty is true in that test of the first field. Why doesn't Form.Dirty fire? What do I need to look at that will help me trace this issue? How can...

Abnormal program termination while using "eseutil /d" #2
Hi Thierry, there is no other server available to move the folders. That´s why we force our users to delete not needed folders. Do you know why the eseutil is running out of order? Sven ...

New essay: whereis utility
The whereis utility is often useful. The problem in Windows is that there are many different search algorithms, based on the platform, Windows release, Service Packs installed, etc., so any program that works like the Unix program, that is, which simulates the search path, is likely to fail, particularly in light of the possible future changes that may occur. This program uses the LoadLibraryEx call to search the load path. www.flounder.com/whereis.htm (It took almost more time to write it up and create the zipfile than to write the program itself...) joe Joseph M. Newcomer [MVP] email...

Dirty Question
Dirty Question Hello, I have a question about the Dirty property/event=85 The following code will evaluate to False (which makes sense) when the record changes: ----------- Private Sub Form_Current() Debug.Print Me.Dirty Call IsRecordDirty End Sub The following code will evaluate to True (which does not make sense to me) when the record changes: -------------- Private Function IsRecordDirty() 'tied to the on dirty event of all text/combo boxes Debug.Print Me.Dirty End Function In the Immediate Window I see: False True Next Record: False True Why is me.d...

shutdown computer
How can we shutdown windows using mfc? And how can we open the CD drive using mfc? Thanks. Jessica "Jessica Weiner" <jessica@gmail.com> wrote in message news:yS_Wf.54174$F_3.9423@newssvr29.news.prodigy.net... > How can we shutdown windows using mfc? And how can we open the CD drive > using mfc? > Look at ExitWindows/ExitWindowsEx. -- Ajay Kalra [MVP - VC++] ajaykalra@yahoo.com Ajay Kalra wrote: > Look at ExitWindows/ExitWindowsEx Thanks. And how do you open the CD drive? Thanks. Jess > And how do you open the CD drive? http://www.codeproject.co...

Dirty Tricks
You dirty bastards. I clicked on the "check for banks supported" by my money product installed and i get this... Banking Direct Services* are the fastest, easiest way to connect with your financial institution and have your statements automatically downloaded into Money directly from your financial institution. * This service is only available if you have Microsoft Money 2005. You will need to use Microsoft .NET Passport in order to access your account information. Your financial institution may offer an alternative means of downloading statements and transactions from their web...

HELP!!! Exchange 5.5 Crashed, eseutil /r didn't work
I have a PowerEdge 2400 single PIII-733mhz, 1GB Ram running Windows 2000 Server and Exchange 5.5. The Exchange server is on Drive C, the Store & Logs are on Drive D: with rest of data. There is currently 6gbs Free space on Drive D: (I know, but we are migrating to Windows Small Business Server 2003 in 4 days) Yesterday at 4:41PM our PowerEdge Server Froze, I was already gone for the day. I came in today and noticed it. I did a reboot of the server and the MSExchangeIS, SA, MTA, DS didn't start. Event ID 5000 and 1120. I attempted ESEUTIL mh on pub and priv edb. Both show inc...

Dirty Shutdown after Exchange database repair
Our Exchange database isn't being backed up (the back-ups fail), hence the logs aren't being cleared. This has been going on for a while. The backup reports are as follows: Backup Status Operation: Backup Active backup destination: 8mm AIT Media name: "Mon-04-01-2010" Volume shadow copy creation: Attempt 1. Backup (via shadow copy) of "D: " Backup set #1 on media #1 Backup description: "Mon-04-01-2010" Media name: "Mon-04-01-2010" Backup Type: Normal Backup started on 4/01/2010 at 11:04 PM. Backup completed on 5/01/2...

ESEUTIL
I want to run defrag against the priv and pub.edb databases and wanted to be sure the correct switches were used. I am going to run a full backup of the server prior to starting this. The Exchange database is on a different drive then the application. I did copy the eseutil to the same drive as the database(E drive). I want to defrag it then used the new compacted database in place of the current. Is this the correct syntax: e:\exchsrvr\bin\eseutil /d e:\exchsrvr\mdbdata\priv.edb I was a little unclear using the /t switch. is that only used if you want to rename the temp.edb file cr...

Error message if the form is dirty
Below is my code on click even of a cmdButton to fire off the before update even of my form.But it produce error message if the form is dirty : 'The setting you entered is not valid for this property" And vba highlights the line "Me.Dirty = False". If Me.Dirty = True Then Me.Dirty = False End If Why it's happen?How to trap it. You get this message if the attempt to save the record fails. For example, if you cancel the Form_BeforeUpdate event Access can't save the record. Or if there is a required field missing, it can't save. When this happen...