SQL Server instances fail to start after Windows Repair

  • I was forced into a repair of my development machine running on Windows XP yesterday after a blue screen STOP error prevented me from booting the system. It said something like "The header checksum does not match the computed checksum". This was after runnign CHKDKS. Anyway, the only thing I could think of was to use the "repair" feature off the Windows XP Installation CD. I've got most of my system back up and running...

    Now I've realised that my installations of SQL Server will not start. I've been trying to get these instances of SQL Server running today, but without success. They were previously running under a "SQL" user, but I have changed that to the Local System account in an attempt to try and get the services to start. I also noticed that some of the data files were marked as compressed, which I have now removed, but again, it has not solved the problem. I have also removed any read only permissions. I have three instances in total. One SQL 2000, one SQL 2005, and one SQL Express, all for development purposes.

    I'm pretty sure that both installations have the same problem. Both report similar errors in the log files. SQL 2000 which is the default instance on machine name "HELIUM", has this is the error log:

    ===================================================================

    2008-01-16 00:00:01.54 server Microsoft SQL Server 2000 - 8.00.194 (Intel X86)

    Aug 6 2000 00:57:48

    Copyright (c) 1988-2000 Microsoft Corporation

    Personal Edition on Windows NT 5.1 (Build 2600: Service Pack 2)

    2008-01-16 00:00:01.54 server Copyright (C) 1988-2000 Microsoft Corporation.

    2008-01-16 00:00:01.54 server All rights reserved.

    2008-01-16 00:00:01.54 server Server Process ID is 3204.

    2008-01-16 00:00:01.54 server Logging SQL Server messages in file 'C:\Program Files\Microsoft SQL Server\MSSQL\log\ERRORLOG'.

    2008-01-16 00:00:01.57 server SQL Server is starting at priority class 'normal'(2 CPUs detected).

    2008-01-16 00:00:02.60 server SQL Server configured for thread mode processing.

    2008-01-16 00:00:02.60 server Using dynamic lock allocation. [500] Lock Blocks, [1000] Lock Owner Blocks.

    2008-01-16 00:00:02.62 spid4 Starting up database 'master'.

    2008-01-16 00:00:02.84 server Using 'SSNETLIB.DLL' version '8.0.194'.

    2008-01-16 00:00:02.84 spid5 Starting up database 'model'.

    2008-01-16 00:00:02.85 server SQL server listening on Shared Memory, Named Pipes.

    2008-01-16 00:00:02.85 server SQL Server is ready for client connections

    2008-01-16 00:00:02.87 spid4 Server name is 'HELIUM'.

    2008-01-16 00:00:02.87 spid4 Skipping startup of clean database id 4

    2008-01-16 00:00:02.87 spid4 Skipping startup of clean database id 5

    2008-01-16 00:00:02.87 spid4 Skipping startup of clean database id 6

    2008-01-16 00:00:02.87 spid4 Skipping startup of clean database id 7

    2008-01-16 00:00:02.87 spid4 Skipping startup of clean database id 8

    2008-01-16 00:00:02.87 spid4 Skipping startup of clean database id 9

    2008-01-16 00:00:02.87 spid4 Skipping startup of clean database id 10

    2008-01-16 00:00:02.87 spid4 Skipping startup of clean database id 12

    2008-01-16 00:00:02.87 spid4 Skipping startup of clean database id 13

    2008-01-16 00:00:03.00 spid5 The header for file 'C:\Program Files\Microsoft SQL Server\MSSQL\data\model.mdf' is not a valid database file header. The PageAudit property is incorrect.

    2008-01-16 00:00:03.03 spid5 Database 'model' cannot be opened due to inaccessible files or insufficient memory or disk space. See the SQL Server errorlog for details.

    ====================================================================

    Then SQL Server 2005:

    ===================================================================

    2008-01-16 00:31:56.73 Server Microsoft SQL Server 2005 - 9.00.2050.00 (Intel X86)

    Feb 13 2007 23:02:48

    Copyright (c) 1988-2005 Microsoft Corporation

    Developer Edition on Windows NT 5.1 (Build 2600: Service Pack 2)

    2008-01-16 00:31:56.76 Server (c) 2005 Microsoft Corporation.

    2008-01-16 00:31:56.76 Server All rights reserved.

    2008-01-16 00:31:56.76 Server Server process ID is 2960.

    2008-01-16 00:31:56.76 Server Logging SQL Server messages in file 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\ERRORLOG'.

    2008-01-16 00:31:56.76 Server This instance of SQL Server last reported using a process ID of 3432 at 1/16/2008 12:28:16 AM (local) 1/15/2008 11:28:16 PM (UTC). This is an informational message only; no user action is required.

    2008-01-16 00:31:56.76 Server Registry startup parameters:

    2008-01-16 00:31:56.78 Server -d C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\master.mdf

    2008-01-16 00:31:56.78 Server -e C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\LOG\ERRORLOG

    2008-01-16 00:31:56.78 Server -l C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\mastlog.ldf

    2008-01-16 00:31:56.85 Server SQL Server is starting at normal priority base (=7). This is an informational message only. No user action is required.

    2008-01-16 00:31:56.85 Server Detected 2 CPUs. This is an informational message; no user action is required.

    2008-01-16 00:31:58.59 Server Using dynamic lock allocation. Initial allocation of 2500 Lock blocks and 5000 Lock Owner blocks per node. This is an informational message only. No user action is required.

    2008-01-16 00:31:59.10 Server Attempting to initialize Microsoft Distributed Transaction Coordinator (MS DTC). This is an informational message only. No user action is required.

    2008-01-16 00:32:01.15 Server Attempting to recover in-doubt distributed transactions involving Microsoft Distributed Transaction Coordinator (MS DTC). This is an informational message only. No user action is required.

    2008-01-16 00:32:01.23 Server Database mirroring has been enabled on this instance of SQL Server.

    2008-01-16 00:32:01.46 spid4s Starting up database 'master'.

    2008-01-16 00:32:01.65 spid4s Error: 5172, Severity: 16, State: 15.

    2008-01-16 00:32:01.65 spid4s The header for file 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\mastlog.ldf' is not a valid database file header. The PageAudit property is incorrect.

    ===================================================================

    Now the bad news. I don't have any database backups. Whoops... myself... shot... foot. However, I can live with a rebuild of the SQL 2005 installation, but the SQL 2000 had some rather tricky and completed DTS jobs which I would like to recover to if I can.

    I welcome any help you might be able to give me.

    Regards

    Ben

    P.S. The system event log reports:

    "The SQL Server (SQL2005) service terminated with service-specific error 3417 (0xD59)."

  • You need way more help than you're going to get in a reasonable time over a forum like this - I recommend calling in a SQL consultant (not trying to get business - I'm not available right now) to help you or if you don't want to spend so much, call PSS and see how far they can get you. I suspect you're going to have more trouble than just what you've hit so far so should have someone dedicated to you for a while.

    And get a backup strategy!

    Thanks

    Paul Randal
    CEO, SQLskills.com: Check out SQLskills online training!
    Blog:www.SQLskills.com/blogs/paul Twitter: @PaulRandal
    SQL MVP, Microsoft RD, Contributing Editor of TechNet Magazine
    Author of DBCC CHECKDB/repair (and other Storage Engine) code of SQL Server 2005

  • It seems that the registries or database files of your SQL Servers are also damaged. You had better re-install your SQL Server and restore your databases.

  • Hi Paul,

    Thanks for the heads up. It does looks like I'm screwed! Am I right in assuming that the DTS jobs are stored in the master db? If I was to take a copy of the existing MDF files, is there any chance that I could reinstall SQL Server and then reattach these MDF files? If so, how do you do that? I'm guessing you cannot dettach the reinstalled new master and reattach the old one instead? If seems to have problems with the LDF rather than the MDF.

    Regards

    Ben

  • dts packages will be in the msdb database.

  • Rajan (1/16/2008)


    dts packages will be in the msdb database.

    Hi Rajan,

    Does that mean that I could reinstall SQL 2000 and then swap in the old msdb file, hence recovering my DTS packages?

    Regards

    Ben

  • Thanks to everyone for their help. I have had some success in getting things back and working. I found these on the web which were useful:

    http://support.microsoft.com/kb/224071

    http://support.microsoft.com/kb/822852

    These are the steps I took to get my DTS jobs back:

    - Copied the existing SQL Server 2000/2005 Data directories to a backup location

    - Uninstalled SQL Server 2005 (all components)

    - Uninstalled SQL Server 2000 (all components)

    - Restarted

    - Reinstalled SQL Server 2000 (everything running under Local System account - mixed mode)

    - Stopped SQL Server Service and SQL Agent Service

    - Started SQL Server with the following via CMD window:

    C:\Program Files\Microsoft SQL Server\MSSQL\Binn>sqlservr -c -m -T3608

    - Dettached the MSDB database using the following:

    use master

    go

    sp_detach_db 'msdb'

    go

    - Copied in my old MSDBDATA.MDF and MSDBLOG.LDF files into the following directory (renamed the newly installed versions as backup):

    C:\Program Files\Microsoft SQL Server\MSSQL\Data\

    - Stopped SQL Server single user mode (CTRL-C in CMD window)

    - Restarted SQL Server normally

    - Ran the following attach script:

    use master

    go

    sp_attach_db 'msdb','C:\Program Files\Microsoft SQL Server\MSSQL\Data\msdbdata.mdf','C:\Program Files\Microsoft SQL Server\MSSQL\Data\msdblog.ldf'

    go

    Hey presto, my DTS jobs have reappeared!

    Thanks again.

    Now to see if I can attach the other user databases...

  • This is probably a very basic question and hopefully very easy to fix once I am advised how to do it! I am getting a message as windows XP starts up saying" SQL Server corrupt or tampered with ( unknown package id) rerun setup" How might I do that?

    thanks , Trevor

  • Hi Trevor,

    I think you will get more response from the community if you start a new thread that describes your problem, rather than adding your post to the end of mine.

    Regards

    Ben

  • Hi Ben,

    Yes, sorry, it took a little while to figure out how everything works. I have started a new thread.

    Thanks.

    Trevor

Viewing 10 posts - 1 through 9 (of 9 total)

You must be logged in to reply to this topic. Login to reply