Is there a Way to Search an Entire Exchange 2007 Database?

I have a client that is in need of searching the entire Exchange Server for emails

that come from a certain domain.

The Database is 300 Gigs in Size and approx 38 mailboxes.

Is there a way for this to be done?

Joseph SalazarVice President - Senior IT ConsultantAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

CESNetwork AdministratorCommented:
David FavorLinux/LXD/WordPress/Hosting SavantCommented:
The way I do this in MariaDB/MySQL is just run the database dump tool, filtered through a script which prepends every row with database + table names, then grep/search for strings of interest.

Crude + effective.

Likely there's some tool which also dumps the Exchange database... if Exchange actually has an SQL database... which, as I'm thinking right now... is doubtful.

More likely Exchange has some sort of custom file system, like Dovecot's mdbox for optimizing message storage.

So, you'll either have to decode all these files using some custom code or use some sort of command line IMAP test tool, then feed in a list of user/pass credentials, to search every user's email for some string.

Likely the first option (custom code to search actual files) will run much faster.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Hi Joseph,

You could use something like this to find and copy emails with a given subject into another mailbox:

Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery "Body:’*String*’" -TargetMailbox "FirstName.LastName" -TargetFolder "ZZ_PowerShell_Search"

Open in new window

Change "*String*" by replacing 'String' with all or part of a subject of the email you are wanting to find.

Change the TargetMailBox to wherever you want the emails to go (your own mailbox perhaps), and the TargetFolder to whatever folder you want them to go into.

Be aware that if you have many mailboxes, this might take a while to run, but you can leave it going.

Joseph SalazarVice President - Senior IT ConsultantAuthor Commented:
Thank you Everyone, it appears that $1,000 is the Magic number for a tool to pull the emails and my client does not wish to pay that much.

Hi Jospeh,

Not sure why anyone would pay for functionality that is already built-in to Exchange?

Plus, installing any third-party software on an Exchange Server if a big no-no as far as I am concerned - it is something that can go wrong, and increases the attack surface.

It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.