freeing up whitespace in mailbox store
We have exchange 2007 and have deleted a lot of old mailboxes. We are running out of hard drive space and I know that the databases need to be shrunk and I want to avoid a lot of downtime. I have 2 issues- 1. some of the users have outlook and
the profiles don't work if we move them to a new mailbox store 2. there are account/mailbox creation scripts that look for the existing databases (this is the main thing I want to avoid).
What I would like to do is create a new temporary mailbox store, move the mailboxes to it, unmount the original database, and then delete the files, remount the database to let exchange create new, clean, empty files, and then move the mailboxes back
to it.
My question is, is it safe to delete all files within the folders for that mailbox store, or will something break? Will the GUID referenced in AD change for the store?
Folders and their contents:
D:\Exchange Server\Mailbox\MstorageDB
contains: MstorageDB.edb and CatalogData-369etc
L:\Exchange Server\Mailbox\Mstorage
contains: tmp.edb, .log, .chk, and .jrs files
November 5th, 2010 7:50pm
Pulling back a little, how close are you to being out of disk space on this volume? Offline defrags are not to be undertaken lightly, of course - Exchange will reuse the whitespace in the database file(s). It looks like your logs are on a different volume
entirely.
That said, I believe your proposed solution should work fine, but you should take a full backup first.Lanwench ** Do not fold, spindle or mutilate. Fill in the box completely and erase any stray marks. Use only a #2 pencil.
Free Windows Admin Tool Kit Click here and download it now
November 5th, 2010 8:40pm
Hiya,
You might want to consider turning on circular logging before the mailbox moves and turning off again afterward to avoid your log disks filling up as you move the mailboxes.
SteveSteve Goodman
Check out my Blog for more Exchange info or find me on
Twitter
November 6th, 2010 1:15am
And, what do you mean when you say the profiles don't work if you move the mailboxes to different mailbox stores? Is this from testing on the current setup, or something you experienced in the past and are worried about happening again?
SteveSteve Goodman
Check out my Blog for more Exchange info or find me on
Twitter
Free Windows Admin Tool Kit Click here and download it now
November 6th, 2010 1:17am
Hi Hiya,
In your situation, moving mailbox into new databse is good idea as Steve has suggested above.
You can delete all files in LOG and DB drive once all mailbox moved into other store. all these will be recreated once you create new database.Anil
November 8th, 2010 7:19pm
Hi sara,
Any update for your issue?
Above gave some good suggestion.
If you issue still existed, I also want to verify some information regarding to your issue.
1. you referred that "your drive space would be run out" , what about the mailboxs in this db work well or not?
2. you move some mailbox to new mailbox store, did the mailbox work well before you do the move, the move process successfully or not(any info), if after the move, the outlook could not work well, I would assume that the original database already corrupted
or the move not successful
3. the method to resolve the issue you referred would be fine, but if the original disk has not enough space, I would suggest that you could move the log file to other volume, or you could use multiple Mailboxstore on different volume.
Regards!
Gavin
Free Windows Admin Tool Kit Click here and download it now
November 9th, 2010 11:43am
Sorry all- I didn't realize my alerts weren't set up with my email address and I had a heck of a time finding this thread again.
To clarify- we have 3 mailbox servers, 2 of which are low on space (close to 90% full on drives housing database [.edb]) files.
So I can create a new database to temporarily move the mailboxes to on the mostly empty server, but because of the creation script I want to move them back to the same database after I've cleaned it up.
Yes, the database files and the log files are on different drives.
The outlook problem has happened in the past, where moving a mailbox causes outlook to fail at opening the mailbox when the mailbox is moved to a new database. The solution is easy- delete the old profile and set up a new one- but I don't want to do
that for at least 300 people (and they would be 300 very angry people). This is because most of the profiles were manually configured, and as a bonus these folks have very limited rights on their PCs.
So it sounds like I am ok to delete the .edb, CatalogData, tmp.edb, .log, .chk, and .jrs files :
"You can delete all files in LOG and DB drive once all mailbox moved into other store. all these will be recreated once you create new database.
Anil"
November 12th, 2010 10:58pm
Hiya,
It sounds like you are on your way..
One thing I will say is, just try moving a test user with the same setup as you describe about between databases and see if you have any client issues. Whether or not the client is manually configured, it should still see the changes automatically, and if
the DB is on the same server, it won't even know there has been a change. If nothing else, by checking it isn't an issue for you may mean you can perform the maintenence at a more leisurely pace.
SteveSteve Goodman
Check out my Blog for more Exchange info or find me on
Twitter
Free Windows Admin Tool Kit Click here and download it now
November 13th, 2010 12:21am
Agreed - good point Steve.
November 13th, 2010 1:26am
And, what do you mean when you say the profiles don't work if you move the mailboxes to different mailbox stores? Is this from testing on the current setup, or something you experienced in the past and are worried about happening again?
Steve
Steve Goodman
Check out my Blog for more Exchange info or find me on
Twitter
OK, I just reproduced this issue. I moved a mailbox to a different database and storage group on the same server, tried to open outlook (2007) and got the following error:
Cannot start Microsoft Office Outlook. Cannot open the Outlook window. The set of folders cannot be opened. The attempt to log on to Microsoft Exchange has failed.
I clicked ok and it did open the mailbox, and the next time I selected that profile it worked. The other account that I tested did not do this- I just selected the profile and it worked after the move. I did wait a little longer on the second
account after the move and perhaps this is some kind of replicaiton issue...
Free Windows Admin Tool Kit Click here and download it now
November 17th, 2010 2:16am
Yes, that replication would make sense. Those attributes are stored in the directory, we move mailboxes out of hours for that very reason.
SteveSteve Goodman
Check out my Blog for more Exchange info or find me on
Twitter
November 17th, 2010 2:24am
What is special about your mailbox creation scripts that makes you want to move your mailboxes back? I.E. Are the scripts configured in such a way that you are concerned about targetting specific databases? If it's a Powershell script, then there are
a number of ways to filter out database you want to exclude from the process, like prefix their names with "DONTUSE", and then set the script to exclude any database with "DONTUSE" in the name. Post your code here if you would like some assistance.
The reason I would advocate not moving the mailboxes twice is every time you move a mailbox in Exchange 2007, you loose the deleted item dumpster. If you are anything like me, you refer your users (or at least their Tier 1 support) to using this method as
a first line of mail recovery.
While you are not performing a dial-tone recovery of a database, you are blanking it which is the first step in the dial-tone process. So yes you should be fine to blow away everything (of course it's always wise to move it to another location first if you
can until you get a comfort level with the process):
http://technet.microsoft.com/en-us/library/bb310773(EXCHG.80).aspx
FYI Microsoft internal operations moves users to new databases and deletes the old ones every time they want to "shrink" a database, so you are definitely going in the right direction for the most effecient way to shrink your databases. Moving users twice
in Exchange 2010 isn't a big issue though as the dumpster 2.0 moves with the user in that enviornment. It's in one of their two 2010 first docs on:
http://technet.microsoft.com/en-us/library/bb687782.aspx
Free Windows Admin Tool Kit Click here and download it now
November 17th, 2010 6:23am
Hi Hotfix,
Sara was worried (based on a bad experience in the past) that if she moved the mailboxes to a different DB, the Outlook clients would have trouble connecting.
Good point on the dumpster.
SteveSteve Goodman
Check out my Blog for more Exchange info or find me on
Twitter
November 17th, 2010 1:18pm
Steve, I was responding to her follow up statement "but because of the creation script I want to move them back to the same database after I've cleaned it up.", so it seems like the Outlook issue was a secondary concern to moving them twice,
and I was confused what about her mailbox provisioning script made her want to move the mailboxes twice. I understand though how you could infer that her concern about moving the mailboxes twice was due to Outlook based upon her original post.
Sarah, if you can share your code with us, we might be able to suggest some tweaks like the "DONOTUSE" trick I suggested above.
Free Windows Admin Tool Kit Click here and download it now
November 17th, 2010 4:20pm
Thank you for the point about the deleted items dumpster. Recover deleted items is actually the most useful improvement in exchange besides recovery storage groups, imo. The concern I had about moving the mailboxes back was mainly for the
outlook issue I described, however, that seems to be an issue because of timing, not the end mailbox location.
The script concern was because it is a script that is part of a larger account creation process with a multitude of scripts- along the lines of at least 9 different scripts for the entire process. I did not write any of it and don't even know where
everything is interconnected, so I am trying not to touch (break) it.
Thanks for the help all.
November 17th, 2010 10:55pm
Scritps - now you manage 300 accounts. Did you create any one of those 300 accounts? How many new mailboxes will you be creating in coming month or a year. do you run the script everytime you create new mailbox. If I were you I'd made the decision
based on this, if there are not so many new mailboxes then I'd create a simple script or just use the GUI.
I like the way you are doing your homework before making any changes -
Free Windows Admin Tool Kit Click here and download it now
November 17th, 2010 11:20pm
I mostly have had good luck with this approach, however, the last one I did (did 2 before, this was the 3rd) had an odd issue. Everything seemed to work fine, but when sending emails from outside our organization to the mailboxes moved back into the
re-created database, the senders would get the following bounce:
#550 5.2.0 STOREDRV.Deliver: The Microsoft Exchange Information Store service reported an error. The following information should help identify the cause of this error: "MapiExceptionCallFailed:16.18969:BE120000, 17.27161:000000006A000000000000000F00000000000000,
255.23226:00000000, 255.27962:7A000000, 255.27962:0A000000, 255.27962:0E000000, 255.17082:B6040000, 0.27745:00000000, 4.21921:B6040000, 255.27962:FA000000, 255.1494:00000000, 255.26426:0E000000, 255.1750:00000000, 0.26849:00000000, 255.21817:B6040000". ##
The message would actually go through, but the senders still recieve the bounce. Move the mailbox to a different db, and the problem goes away. I tried moving all the mailboxes out, dismounting the database, deleteing all files - .edb, logs,
and even the CatalogData folder and all its contents, and remounting the database to re-create, then moved a mailbox back in- same issue.
As for how many mailboxes we manage- 55,000 total, and the script is hard coded to create mailboxes on various DBs based on their names.
February 15th, 2011 3:25am
Hi Sara,
I am facing the same problem. Please help to fix it.
Generating server: EXCHANGE2010.abs.inet
gdunn@advancebusiness.net
#550 5.2.0 STOREDRV.Deliver: The Microsoft Exchange Information Store service reported an error. The following information should help identify the cause of this error: "MapiExceptionCallFailed:16.18969:A1000000, 17.27161:000000005B020000000000007399000000000000,
255.23226:00000000, 255.27962:05000000, 255.27962:12000000, 255.27962:13000000, 255.27962:18000000, 255.27962:4F000000, 255.17082:80040000, 0.23649:00000000, 4.21921:80040000, 255.27962:FA000000, 255.1494:2C000000, 255.1238:4F000000, 6.21970:0F01048040008F6617010480,
6.21970:0F01048040008F6617010480, 6.21970:0F01048040008F6617010480, 6.21970:0F01048040008F660F010480, 6.21970:0F01048040008F660F010480, 6.21970:0F01048040008F6617010480, 6.21970:0F01048040008F6617010480, 6.21970:0F01048040008F6617010480, 6.21970:0F01048040008F6617010480,
6.21970:0F01048040008F6617010480, 0.49363:0F010480, 0.56965:0F010480, 4.45069:80040000, 4.10853:80040000, 0.65003:0F010480, 4.12901:80040000, 0.36425:0F010480, 4.11621:80040000, 4.56781:80040000, 0.21484:17010480, 4.23788:80040000, 255.1750:2D000000, 0.26849:0F010480,
255.21817:80040000, 0.29726:00000000, 4.18462:80040000". ##
Original message headers:
Free Windows Admin Tool Kit Click here and download it now
June 22nd, 2011 3:35pm
Hi Sara/Exch 2010,
Such issue occurs due to database configuration corruption issue.
As dtatabse state/config is stored in AD config part. So when you remounting the database, then it takes/reads the configuration from previous state saved in AD and create the database with old corrupted config. that's why you have again faced same issue.
To resolved such issue you have to RUN ISINTEG commmand till 0Fixes shown in result in command, which may resolved your issue.
OR, You delete the mailbox database completely with storage group as well as logs, chk, edb files etc...and then Re-create the Storage group and then mailbox database, which creates new mailbox database and they have new configuration. which may resolved
the issue.
Thanks,
Vidyanand
June 22nd, 2011 6:27pm
Hi Vid,
Thanks very much for your reply,
According to the following article, isinteg is not very compatible when repairing exchange server 2010 mail boxes. Please comment.
http://eightwone.com/2010/06/14/goodbye-isinteg-hello-new-mailboxrepairrequest/
Free Windows Admin Tool Kit Click here and download it now
June 22nd, 2011 6:33pm
Hi Exch2010,
Yes, in 2010 it is not recomended, but exist. ISINTEG is replaced in 2010 with new PS1 file for the same purpose. So please use PS1 script file.
Thanks,
Vidyanand
June 22nd, 2011 6:43pm
Hi Vid,
Just want to confirm that one the "Server configuration" ---> properties, I only got " Version 14.0 (Build 639.21)". Where else I can find if the server even have SP1 installed on it or not?
Thanks,
Free Windows Admin Tool Kit Click here and download it now
June 22nd, 2011 7:13pm
I think if you have SP1 it shows up under programs and features.
I gave up and moved all the mailboxes to a new storage group and database, and just changed the script. Sucks.
June 22nd, 2011 11:15pm