amset

.info
.co.uk - exchange consultancy
Have your Exchange server installed, maintained or
upgraded by Sembee.
Exchange 2000, 2003, 2003 SBS, 2007
More Information (UK only)

Broadband - Exchange
Login Scripts - Net Admin
Outlook - Windows Mobile
Windows

Contact - Director's Blog

AddThis Social Bookmark Button

Exchange Server

Exchange Consultancy


Amazon Store


Basic Email Gateway Server

Company wide Contact List

Disabled User Account

Distribution Lists

DNS Configuration

Exchange and a
Dynamic IP Address

Event ID 1221

Filter Unknown Users

Global Mailbox Folder
Permissions from Server

Intelligent Message Filter

Internal Email Address
for External People

Mailbox and Management
Account

Message Tracking

Migrating to a new server

Multiple Domains

Offline Address Book Errors

Options when a Staff Member
Leaves

Outlook Web Access

PDAs, OMA and EAS

Permissions Best Practises

Post Install Configuration

Public Folders

Prerequisites for Exchange
System Tools

RPC over HTTPS

Secure your SMTP Relay

Shutdown Script

SMTP Services and Exchange

SMTP Diagnostics

Spam Cleanup

Switching From POP3
to SMTP Delivery

Telnet Test

Username Change

Exchange Server
Compatibility Information
Exchange
Server Version
Compatibility
5.5 No
2000 No
2003 No
2007 Yes
Shutdown Script for Exchange 2007

Author: Simon Butler, Exchange MVP, MCSE
Last Page Review: 15/02/2009

This is the Exchange 2007 version of this article. For the Exchange 2003 version - go here.

If you are running Exchange 2007 on a domain controller, then you will find that it takes the machine a long time to shutdown. This is because the domain functionality stops quicker than Exchange, therefore Exchange is unable to write to the domain controller and has to be be "killed" by the operating system.

This continual "killing" of the Exchange services, instead of allowing them to shutdown gracefully is not good for the database and is one of the prime reasons for recommending that Exchange is not installed on a domain controller.

A better option is to stop the services before you begin to shutdown the server. This will also cause the server to shutdown more quickly because it isn't waiting for the services to timeout.

Even if you have a dedicated Exchange server, if you are using a UPS, then you may also want to shutdown the Exchange services before the UPS shuts down the OS. In many cases the domain controller may shut down before Exchange, which will cause delays as Exchange needs to communicate with the the domain controller during the shutdown process. 

While you can stop the services yourself using the services administrative tool, instead use a batch script with a shortcut on the desktop. 
Due to the dependencies required for some services, you can shortcut the list by stopping one service with the /y command.
Below is a sample script. Simply copy and paste it in to a new notepad document and save it as "stop-exchange.cmd".

What does the script do?

net stop msexchangeadtopology /y

Stops the "Microsoft Exchange Active Directory Topology Service" which will stop the following services

Microsoft Exchange Unified Messaging
Microsoft Exchange Transport Log Search
Microsoft Exchange Transport
Microsoft Exchange Service Host
Microsoft Exchange Search Indexer
Microsoft Exchange Replication Service
Microsoft Exchange Mail Submission
Microsoft Exchange Mailbox Assistants
Microsoft Exchange File Distribution
Microsoft Exchange EdgeSync
Microsoft Exchange Anti-spam Update

It will also stop POP3 and IMAP4 if those are enabled.

net stop msftesql-exchange /y

stops the "Microsoft Search (Exchange)" which does not have any dependencies

net stop msexchangeis /y

stops the "Microsoft Exchange Information Store" which does not have any dependencies

net stop msexchangesa /y

stops the Microsoft Exchange System Attendant which does not have any dependencies

net stop iisadmin /y

stops IIS which will also stop the following services

World Wide Web Publishing Service
HTTP SSL

If you are using a third party plug-in, then you may find that there is a dependency on that plug-in which can cause the script to fail. The /y at the end of each command should deal with it, but if you find that the third party service doesn't stop in time, adjust the script to include a delay. (Sleep is part of the Windows Resource Kit tools, if you don't have it installed on the server)

For example, this is a script used with an old version of McAfee Group Shield

Finally, you might also want a script to start Exchange again. This can be useful if you apply an update which requires a restart of the Exchange services, but don't need to restart the server. However starting the services is a little more complex as the less number of the services are dependant on other services. Therefore more services have to be started manually. Simply copy and paste it in to a new notepad document and save it as "start-exchange.cmd".

Shutdown or restart the server afterward stopping Exchange

If you are using these scripts to shutdown Exchange before a server is shutdown (for example by a UPS) or rebooted, then you may want to fully automate the process by scripting the shutdown/restart as well. This can be easily achieved by adding an extra line to the end of the script:

Restart the server

Shutdown the server

Sponsored Links

Last Page Update:
15/02/2009

Back to the Top
Contact Us - Director's Blog
Exchange Index - Home Page


Broadband - Exchange - Login Scripts - Network Admin - Outlook - Windows Mobile - Windows


© Sembee Ltd. 1998 - 2009. All rights reserved. Reproduction of any content on this web site is prohibited without express written consent. Use of this web site is subject to our terms and conditions. All trademarks and registered trademarks are property of their respective owners. This site is not endorsed or recommended by any company or organisation mentioned on this site. This site is to provide guidance only and as such we cannot be held responsible for any consequences of following the advice given.