In this section we will look at exporting the damaged page file to a text file. Name the txt file in relation to the page file itself so as below this relates to page 3106. Therefore, you could use the following command to create a file called 3106.TXT.
This must be run from the \Program Files\EXCHSRVR\BIN directory
eseutil /m “d:\program files\exchsrvr\mdbdata\pri
1.edb” /p3106 >3106.txt
After running the command you will see the text file created.
Microsoft(R) Exchange Server(TM) Database Utilities
Copyright (C) Microsoft Corporation 1991-2000. All Rights Reserved.
Initiating FILE DUMP mode…
Database: d:\program files\exchsrvr\mdbdata\priv1.edb
pgnoThis <0×02360004, 4>: 3106 (0×00000064)
objidFDP <0×02360018, 4>: 11 (0x0000000b)
ulChecksumParity <0×02360000, 4>: 466674925 (0x1bd0e4ed)
dbtimeDirtied <0×02360008, 8>: 216893 (0x0000000000034f3d)
cbFree <0x0236001c, 2>: 4026 (0x0fba)
ibMicFree <0×02360020, 2>: 3265 (0x0cc1)
itagMicFree <0×02360022, 2>: 2 (0×0002)
cbUncommittedFree <0x0236001e, 2>: 0 (0×0000)
pgnoNext <0×02360014, 4>: 0 (0×00000000)
pgnoPrev <0×02360010, 4>: 0 (0×00000000)
fFlags <0×02360024, 4>: 3141 (0x00000c45)
Parent of leaf
Multiple Extent Space (ParentFDP: 97, pgnoOE: 340)
Index page (non-unique keys)
TAG 0 cb: 16 ib: 0 offset: 28 - 37 flags: 0×0000
TAG 1 cb: 6 ib: 3259 offset: ce3 – ce8 flags: 0×0000
Operation completed successfully in 1.91 seconds.
Things to Note:
When I generated my report, I picked page number 3106 at random. As you can see at the bottom of the text file, page 3106 is an index page. If you ever have to repair a 1018 error, you’ll usually lose all of the data on the page that you encountered the error on. Of course, that’s assuming that the error occurred on a leaf page. An index page links too many other pages. Therefore, if the page that I selected had actually been damaged, I might have lost the index page and all related leaf pages. This could possibly lead to a complete breakdown of the entire database. Fortunately, Exchange is really good about rebuilding structural components, such as index pages.
When you browse the file you can see the page number and previous page number and the next database pages. Also you should pick out the checksum parity bit number and you can use all this info when attempting to repair the database.
You also need to realize that you can get false 1018 errors. Now and then a faulty disk cache or a faulty hard drive will cause data to be read from a location other than the correct location specified by Exchange. When this happens the database is initially corrupt and you have a serious problem on your hands because the disks actions will soon cause the database to become totally corrupt.
At this stage you probably really need to understand about repairing a corrupt database which Ill talk about more in another post. For now understand how to read the txt file which will help you resolve and repair.
The common type as mentioned of database corruption is at the page level. You’ll get heaps of different error messages the can potentially relate to this type of corrupt database. The most common being 1018, now we have all seen the 1018 Jet_errReadVerifyFailure (havent we?) Most of the time this error indicates that the page has the incorrect checksum value or the page number is incorrect. Microsoft Exchange will begin reading the database page by processing the page number; this is so it knows its reading the correct data. If for some reason the number is different from the expected number, then yes you guessed it exchange generates the 1018 error.
Otherwise Microsoft Exchange will calculate a checksum value for the page then verify the calculated value and make sure it matches the stored checksum value. If it does match then the page is assumed to correct and valid otherwise, yes again the 1018 gets generated.
Should I take the 1018 seriously?
The 1018 is often a warning that bad things are on their way. Exchange is trying to tell you that the database has failed once and may go again. Normally they will be non fatal failures; however future failures could be worst and corrupt the store.
So if you haven’t worked it out already the 1018 is associated with an individual page within the database rather than the whole database. The 1018 is normally not fatal and some may take it as of no interest at all because Exchange has been known to generate this error with infrequently used data such as in a deleted items folder or just a plain old blank database.
What do I do with the 1081?
Try and find more about the error before trying to repair, first instinct is to fix but learn more about it first. This way you can try and determine exactly what data was affected and how fatal the failure is, also what’s the likelihood of it happening again.
In the next section we will look further at the 1018 but in the meantime check out some of the links on the 1018 error.
Understanding and analyzing -1018, -1019, and -1022 Exchange database errors
Microsoft engineer Mike Lee recorded a great support webcast last year that is also helpful
Most of the time database corruption refers to ….the data in the store becomes corrupt/invalid or unreadable. If the wrong data is written to the database or written to the wrong location or physically damaged after being written.
Now..How does this happen? If the hard disk has many bad sectors or becomes physically damaged, transaction logs get read incorrectly and the update is incorrect. I’ve also had it happen when power failures cause shutdown. Whatever the reason you most understand there are several places corruption can occur?
The page Level. – This is an individual place inside the database where data is stored. Miss read Tran logs or power failures normally cause this and you’ll find this type common. Most corruption issues will be page level corruption.
The Database Level. – This is where the individual pages are OK but the database file is invalid. Like if the file header is damaged or part unreadable. This problem at the database level often means the jet database cannot interact correctly with the associated EDB file.
The Application Level – This refers to the entire store itself the database is relational which means that the databases depend on each other for info. Example Although Exchange 2000 doesn’t have directory service it depends on the Active Directory.
Also you must consider other possibilities too. If Exchange isn’t working correctly then don’t always presume it’s the store or the database is corrupt. Exchange depends on Active Directory, IIS and Windows and of course the hardware. So if one of these is having issues then Exchange will be too. If your server has a memory related problem, then items stored in memory may be corrupt. Therefore, if Exchange sends the system to send the contents of a particular memory block to the database or to a transaction log, then the database or transaction log would become corrupted as a result of the memory problem.
You can see that the way Exchange databases are layered and all the components that depend on each other leaves heaps of room for issues.]]>
Recipient Policies What Are They?
Recipient policies are organisation wide objects held in the “Recipient Policies” container – a sub container of Recipients. When you install Exchange the program creates a default policy and you can then create as many policies as you want to after. Although you must keep the default policy and you cannot delete it.
What do they do?
Set a default value for the domain used by Exchange to reference files via IFS. (IFS provides access to the Exchange information store by using Win32 file system APIs)Generates email proxy address. RUS generates and sets email addresses on new mail enabled objects but you define the format for the addresses and the type of proxy address that RUS generates through policy.Controls how the mailbox manager processes mailboxes.
Enables SMTP virtual servers to accept incoming mail. When you make an installation of Exchange the virtual servers will accept email from the domain defined in the default policy, but you add policies to cover additional domains if you require.
The Recipient Update Service (RUS) is responsible for creating and maintaining E-Mail Addresses in your Exchange Organization. The Recipient Update Service creates an Entry (Recipient Update Service (Enterprise Configuration)) for the entire Exchange Organization for modifying objects in the Configuration Container Partition in Active Directory and one RUS for every Exchange enabled Domain in this Forest.
Exchange Install.After install there is one default policy created called “Default Policy” This policy contains Proxy address for the default SMTP domain and one for X.400 – You can add additional Proxy addresses to the default policy or have different Recipient Policies for different users.Note:If you want to remove old or unwanted E-Mail addresses, you must either remove the addresses manually in Active Directory Users and Computers or use an automated process. Or you can use LDIFDE.
How to tell what Exchange version you are using? Many of us know of course but Microsoft have build numbers to indentify exact builds.
To find your build: The easiest way is to open ESM>Administrative Groups>Domain Name>click on the servers folder and to the right you will see all your servers and under Server Version is the version type. Make sure you are running the latest service pack for the version you are using.
Version Build number Release date
Microsoft Exchange Server 4.0 4.0.837 April 1996
Microsoft Exchange Server 4.0 (a) 4.0.993 August 1996
Microsoft Exchange Server 4.0 SP1 4.0.838 May 1996
Microsoft Exchange Server 4.0 SP2 4.0.993 August 1996
Microsoft Exchange Server 4.0 SP3 4.0.994 November 1996
Microsoft Exchange Server 4.0 SP4 4.0.995 April 1997
Microsoft Exchange Server 4.0 SP5 4.0.996 May 1998
Microsoft Exchange Server 5.0 5.0.1457 March 1997
Microsoft Exchange Server 5.0 SP1 5.0.1458 June 1997
Microsoft Exchange Server 5.0 SP2 5.0.1460 February 1998
Microsoft Exchange Server 5.5 5.5.1960 November 1997
Microsoft Exchange Server 5.5 SP1 5.5.2232 July 1998
Microsoft Exchange Server 5.5 SP2 5.5.2448 December 1998
Microsoft Exchange Server 5.5 SP3 5.5.2650 September 1999
Microsoft Exchange Server 5.5 SP4 5.5.2653 November 2000
Microsoft Exchange 2000 Server 6.0.4417 October 2000
Microsoft Exchange 2000 Server (a) 6.0.4417 January 2001
Microsoft Exchange 2000 Server SP1 6.0.4712 July 2001
Microsoft Exchange 2000 Server SP2 6.0.5762 December 2001
Microsoft Exchange 2000 Server SP3 6.0.6249 August 2002
Microsoft Exchange 2000 Server post-SP3 6.0.6487 September 2003
Microsoft Exchange 2000 Server post-SP3 6.0.6556 April 2004
Microsoft Exchange 2000 Server post-SP3 6.0.6603 August 2004
Microsoft Exchange Server 2003 6.5.6944 October 2003
Microsoft Exchange Server 2003 SP1 6.5.7226 May 2004
Microsoft Exchange Server 2003 SP2 6.5.7638 October 2005
Microsoft Exchange Server 2007 8.0.685.24 or 8.0.685.25 December 2006
Microsoft Exchange Server 2007 SP1 8.1.0240.006 November 2007
You must ensure you meet the prerequisites before you attempt this and they are as follows:
If you have Exchange Full Administrator permissions at the administrative group level, you can uninstall Exchange Server 2003, provided that you have permissions for the administrative group to which the server belongs.
If there are any mailboxes assigned to a storage group on a server, you cannot uninstall Exchange Server 2003 from that server. In this case, you must either move or delete the mailboxes before you can uninstall Exchange.
You cannot uninstall Exchange Server 2003 from a server if it is the only server in your organization running the Recipient Update Service. Instead, you must first use Exchange System Manager to enable the Recipient Update Service on another server.
You cannot uninstall Exchange Server 2003 from a server if it is the only server in a mixed administrative group that is running Site Replication Service (SRS). Instead, you must first enable SRS on another Exchange server.
You cannot uninstall Exchange Server 2003 from a server if it is a bridgehead server for a connector and there are other Exchange servers in your organization. Instead, you must first designate a new bridgehead server.
You cannot uninstall Exchange Server 2003 from a server if it is the routing master and there are other Exchange servers in your organization. Instead, you must first designate a new routing master.
Now before you remove the server from a production environment that has multiple servers in the administrative group, understand that you need to know all the servers roles that are held by this machine. Make sure you move your roles to other machines. Example: If the server is listed as a bridgehead server on a connector you will have to move this before uninstall will work. Failure to do this could cause many things including the following:
Mail flow may stop if the server is a bridgehead server.
Mail flow will be totally screwed if the server is the routing group master.
Outlook issue and OWA issues so confirm and check before attempting the uninstall.
Before you remove Exchange 2003, you must disconnect all mailbox-enabled users from the mailboxes on the Exchange server. It is not possible to remove an Exchange Server when it has mounted mailboxes. If you are getting this error check out the following “One or more users currently use this mailbox store. These users must be moved to a different mailbox store or be mail disabled before deleting this store”A good way to try to find these missing users is to use Active Directory Users and Computers. Here’s what to do:
1. Run ADUC.(Active Directory Users and computers – come on!)
2. Right-click your domain at the top, and choose Find.
3. Click the Advanced tab, and then choose User from the Field button.
4. From the list of attributes displayed, choose Exchange Home Server.
5. Set the Condition field to Ends With and then type your Exchange server name into the Value field. Click Add to add this value.
6. Now click the Find button, and hopefully you’ll see the troublesome user listed in the results window.
You should then be able to remove the Exchange attributes from these user accounts and proceed with the un install.
To uninstall Exchange Server 2003
1. Log on to the server from which you want to uninstall Exchange.
2. Click Start, point to Control Panel, and then click Add or Remove Programs.
3. In Add or Remove Programs, select Microsoft Exchange, and then click Change/Remove.
4. On the Welcome to the Microsoft Exchange Installation Wizard page, click Next.
5. On the Component Selection page, in the Action column, use the drop-down arrows to select Remove, and then click Next.
Follow the bouncing ball and Exchange should uninstall.