DHCP Database Migration Steps Necessary Monitor

Microsoft.Windows.DHCPServer.Library.Database.UnitMonitor.Migration.1 (UnitMonitor)

Knowledge Base article:

Resolutions

When the DHCP service first starts after an upgrade, it detects that the database needs to be converted. It then starts a conversion process, Jetconv.exe. (If Jetconv.exe has already been started by another service, a second Jetconv.exe process is not started.) The user is asked for confirmation before the conversion process starts. If the user clicks OK, the DHCP service stops and the conversion begins. Jetconv.exe converts the databases of all the installed services (DHCP and, if installed, WINS and RPL) to the new database format.

After the DHCP database is converted successfully, the DHCP Server service automatically restarts.

Before starting the conversion process, note the following guidelines:

The services must not be restarted while the databases are being converted. To check the status of the conversion, watch the Application Event Log of the Jetconv.exe process by using Event Viewer.

In cases in which this automatic procedure of converting databases fails, the database can be converted manually by using winnt\system32\upg351db.exe.

Likewise, if this is the first time you start DHCP after an upgrade from Windows NT 3.51, you need to run the conversiontool (upg351db.exe in the winnt\system32 folder) on the DHCP database to convert it to the new, improved database format. After the database has been converted, restart DHCP.

To perform these procedures, you must be a member of the Administrators group, or you must have been delegated the appropriate authority.

To upgrade the database:

Element properties:

TargetMicrosoft.Windows.DHCPServer.Library.Database
Parent MonitorSystem.Health.ConfigurationState
CategoryStateCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.SingleEventLogManualReset2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
DHCP Database Migration Steps Necessary Monitor
{0}
RunAsMicrosoft.Windows.DHCPServer.Library.ActionAccount

Source Code:

<UnitMonitor ID="Microsoft.Windows.DHCPServer.Library.Database.UnitMonitor.Migration.1" Accessibility="Public" Enabled="onEssentialMonitoring" Target="Microsoft.Windows.DHCPServer.Library.Database" ParentMonitorID="Health!System.Health.ConfigurationState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.SingleEventLogManualReset2StateMonitorType" ConfirmDelivery="true" RunAs="Microsoft.Windows.DHCPServer.Library.ActionAccount">
<Category>StateCollection</Category>
<AlertSettings AlertMessage="Microsoft.Windows.DHCPServer.Library.Database.UnitMonitor.Migration.1_AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="EventRaised" MonitorTypeStateID="EventRaised" HealthState="Error"/>
<OperationalState ID="ManualResetEventRaised" MonitorTypeStateID="ManualResetEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<LogName>System</LogName>
<Expression>
<And>
<Expression>
<Or>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-DHCP-Server</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">DHCPServer</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</Or>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">1022</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</Configuration>
</UnitMonitor>