Windows Server 2008 RTM Application Support
What will support Windows Server 2008 at RTM?
- .NET Framework 2.0 (installed)
- .NET Framework 3.0 SP1 ( part of Application Server role )
- .NET Framework 3.5
- Dynamics CRM 4.0
- Exchange Server 2007 SP1
- Forefront Security Server 1.0
- MOSS SP1 ( installation notes for Windows Server 2008) http://support.microsoft.com/kb/936988
- SQL Server 2005 SP2
- System Center Data Protection Manager 2007
- System Center Configuration Manager 2007 (Formerly SMS)
- System Center Operations Manager 2007
- Windows Sharepoint Services 3.0 SP1 ( installation notes for Windows Server 2008 ) http://support.microsoft.com/kb/936988
- Visual Studio 2008
- WSUS 3.0 SP1
What are we planning to support in the first half of 2008?
- We will ship the Hyper-V technology 180days after RTM
- Dynamics AX 2009
- MOM SP1
- SCCM 2007SP1
- System Center Essentials 2001
- Forefront Client Security SP1
What are we planning to support in the second half of 2008?
- Application Virtualization 4.5
- Commerce Server 2007 SP2
- HIS 2006 SP1
- MOM 2005 SP1
- SQL Server 2008
- System Center Essentials 2001
- Windows System Center VMM 2.0
- Windows Essential Business Server
- Windows Home Server vNext
- Windows HPC Server 2008
So what will not be supported?
- SMS 2003
- System Center Reporting Manager
- Internet Security and Acceleration Server 2006 and earlier
Source:
SQL Server 2005 Error Log Directory is Removed From Server - Service Fails to Start
Problem:
After I moved my RAID set from 1 server to another, the SQL Server service refused to start on the old machine, even though the data files are still intact on the system.
The SQL Server error logs resided on the RAID container I moved; I wasn't aware of this.
Event Type: Error
Event Source: MSSQLSERVER
Event Category: (2)
Event ID: 17058
User: N/A
Description:
initerrlog: Could not open error log file '<full file path and filename>'. Operating system error = 3(The system cannot find the path specified.).
Great. I search online, and I get stuff about MOVING the data files at http://support.microsoft.com/default.aspx?scid=kb;en-us;224071. But what if I had already pulled the RAID container? My data is safe... I just want to move the error log file.
Solution:
Edit the startup properties of the service to point the Error Log to a new location. Make sure you don't just specify a target directory, but also the target log file name. Here's what I did.
I went into the SQL server directory ("C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Binn" for me) and tried to start SQL Server manually. (If you go into Admin Tools\Services, right click on the SQL Service, Pproperties, check out the "Path to executable". Note the -sMSSQLSERVER or any other start up parameters that specify the instance you're having trouble with.)
I did a sqlservr /? in a cmd window:
usage: sqlservr
[-c] (not as a service)
[-d file] (alternative master data file)
[-l file] (alternative master log file)
[-e file] (alternate errorlog file)
[-f] (minimal configuration mode)
[-m] (single user admin mode)
[-g number] (stack MB to reserve)
[-k <decimal number>] (checkpoint speed in MB/sec)
[-n] (do not use event logging)
[-s name] (alternate registry key name)
[-T <number>] (trace flag turned on at startup)
[-x] (no statistics tracking)
[-y number] (stack dump on this error)
[-B] (breakpoint on error (used with -y))
[-K] (force regeneration of service master key (if exists))
Next, I did "sqlservr.exe -eH:\SQL -sMSSQLSERVER" at the command prompt. (Hit CTRL+C to safely terminate the instance if necessary.) This generated this error in my event log.
Event Type: Error
Event Source: MSSQLSERVER
Event Category: (2)
Event ID: 17058
User: N/A
Description:
initerrlog: Could not open error log file 'H:\SQL'. Operating system error = 5(Access is denied.).
Oops. I checked the ACLs; they looked fine. I had forgotten to specify a full path/filename for the log.
Tried "sqlservr.exe -eH:\SQL\err.log -sMSSQLSERVER" Bingo. Service starts. (Hit CTRL+C to safely terminate the instance if necessary.)
Good. Now to update the service so that it behaves. Went into the "SQL Server Configuration Manager" - NOT the Management Studio. Right click on the service, Properties. Advanced tab, change the Startup Parameters.

Edit the text in the red location in the image above, so that it contains the updated error log path we had tested in the console.
SQL 2005 Reporting is filling up C:\ drive
Source: Walter Eikenboom
While testing and playing around with SCOM 2007 for a few weeks in my test environment my c:\ drive was filling up. Normally there would be a lot of service packs, install and update files on the drive but this time it was clean.
After some searching i found a logfile directory of 2GB in the "C:\Program Files\Microsoft SQL Server\MSSQL.2\Reporting Services\Logfiles" so there was my problem. From the " SQL Server Management studio" there was no possibility to change the location so i had to change de location of the logfiles the following way:
In Notepad, open the ReportingServicesService.exe.config file that is located in the following folder:
Drive:\Program Files\Microsoft SQL Server\MSSQL.x\Reporting Services\ReportServer\Bin
add the following code to the <RStrace> section:
<add name="FileName" value="ReportServer_" />
<add name="Directory" value="YourPath" />
In Notepad, open the Web.config file that is located in the following folder:
Drive:\Program Files\Microsoft SQL Server\MSSQL.x\Reporting Services\ReportServer
Add the code that is listed in step 2 to the Web.config file.
In Notepad, open the Web.config file that is located in the following folder:
Drive:\Program Files\Microsoft SQL Server\MSSQL.x\Reporting Services\ReportManager
Add the code that is listed in step 2 to the Web.config file.
Set the same permissions on the new logfile folder as there where on the old logfile folder and restart the ReportServer Windows Service. After moving the old logfiles to the new location the drive space problem was solved.
Troubleshooting Performance Problems in SQL Server 2005
It is not uncommon to experience the occasional slow down of a SQL Server database. A poorly designed database or a system that is improperly configured for the workload are but several of many possible causes of this type of performance problem. Administrators need to proactively prevent or minimize problems and, when they occur, diagnose the cause and take corrective actions to fix the problem. This paper provides step-by-step guidelines for diagnosing and troubleshooting common performance problems by using publicly available tools such as SQL Server Profiler, System Monitor, and the new Dynamic Management Views in SQL Server 2005.
http://www.microsoft.com/technet/prodtechnol/sql/2005/tsprfprb.mspx
More:
Sql 2005 Dynamic Memory Managment with AWE enabled
http://blogs.msdn.com/chadboyd/archive/2007/03/08/sql-2005-dynamic-memory-managment-with-awe-enabled.aspx
Reporting Services Trace Logs
http://msdn2.microsoft.com/en-us/library/ms156500.aspx
Report and Snapshot Size Limits
http://msdn2.microsoft.com/en-US/library/ms156002.aspx
Monitoring Report Execution Performance with Execution Logs
http://msdn2.microsoft.com/en-us/library/aa964131.aspx
How to diagnose issues when running reports in the report server?
http://blogs.msdn.com/lukaszp/archive/2007/01/31/how-to-diagnose-issues-when-running-reports-in-the-report-server.aspx
Installing SQL Server 2005 SP2 Causes Error, "Unable to install Windows Installer MSI file"
Error message:
The following unexpected error occurred:
Unable to install Windows Installer MSI file
Workaround:
You will need access to the SQL Server 2005 SP1 package. First, copy/paste the following script into notepad and save it as "RepairSP1Source.js".
if( WScript.Arguments.Length < 1 )
{
WScript.Echo( "Usage: RepairSP1Source.js \"<path to extracted SP1 files>\"" );
WScript.Quit( 1 );
}
var filesystem = new ActiveXObject( "Scripting.FileSystemObject" );
var newSource = WScript.Arguments( 0 );
if( !filesystem.FolderExists( newSource ) )
{
WScript.Echo( "The path to the extracted SP1 package does not exist. Please correct the path and run the tool again." );
WScript.Quit( 1 );
}
var installer = WScript.CreateObject( "WindowsInstaller.Installer" );
// Look for MSPs at the extracted location
EnumerateMSPs( newSource );
function EnumerateMSPs( extractedSp1PatchPath )
{
var folder = filesystem.GetFolder( extractedSp1PatchPath );
var fileEnum = new Enumerator( folder.Files );
for( ; !fileEnum.atEnd(); fileEnum.moveNext() )
{
var nextFile = fileEnum.item();
if( filesystem.GetExtensionName( nextFile.Name ) == "msp" )
{
WScript.Echo( "Found patch located at: " + nextFile.Path );
var extractedSp1PatchSummaryInfo = installer.SummaryInformation( nextFile.Path );
// Retrieve the PatchCode from the SummaryInformation
var extractedSp1PatchCode = new String( extractedSp1PatchSummaryInfo.Property( 9 ) ).substring( 0, 38 );
// Look to see if we need to repair the cached MSP for this Patch
RepairCachedMSP( extractedSp1PatchCode, nextFile.Path );
WScript.Echo();
}
}
// Now look in subfolders for MSPs
var folderEnum = new Enumerator( folder.SubFolders );
for( ; !folderEnum.atEnd(); folderEnum.moveNext() )
{
var nextFolder = folderEnum.item();
EnumerateMSPs( nextFolder.Path );
}
}
function RepairCachedMSP( extractedSp1PatchCode, extractedSp1PatchPath )
{
var sp1Patch = null;
var cachedSp1PatchFileName = null;
WScript.Echo( "Attempting to repair the local cache for PatchCode \"" + extractedSp1PatchCode + "\"" );
// Enumerate all products installed on the machine to see if any have been patched by
// this MSP
var products = installer.ProductsEx( "", "", 4 );
// Look for the first product that is patched with this MSP.
for( var x = 0; (sp1Patch == null) && (x < products.Count); x++ )
{
var nextProduct = products.Item( x );
var nextProductPatches = installer.PatchesEx( nextProduct.ProductCode, "", 4, 1 );
for( var y = 0; (sp1Patch == null) && (y < nextProductPatches.Count); y++ )
{
var nextProductPatch = nextProductPatches.Item( y );
var nextPatchURL = nextProductPatch.PatchProperty( "MoreInfoURL" );
var nextPatchURLString = new String( nextPatchURL );
// See if this patch is SP1 and if it matches the PatchCode of what the user
// extracted to the hard drive.
if( ( nextPatchURLString.indexOf( "kbid=913090" ) != -1 )
&& ( extractedSp1PatchCode == nextProductPatch.PatchCode ) )
{
cachedSp1PatchFileName = nextProductPatch.PatchProperty( "LocalPackage" );
// Only re-cache if the MSP is missing
if( !filesystem.FileExists( cachedSp1PatchFileName ) )
{
sp1Patch = nextProductPatch;
}
}
}
}
if( !cachedSp1PatchFileName )
{
WScript.Echo( "No action can be taken as the patch has not been applied on the local machine." );
}
else
{
if( sp1Patch == null )
{
WScript.Echo( "No action will be taken since the provided SP1 patch appears to exist locally." );
}
else
{
var extractedSp1Patch = filesystem.GetFile( extractedSp1PatchPath );
WScript.Echo( "Re-caching patch for the product code \"" + sp1Patch.ProductCode
+ "\" and patch \"" + sp1Patch.PatchCode + "\" to \"" + cachedSp1PatchFileName + "\"" );
extractedSp1Patch.Copy( cachedSp1PatchFileName );
var updatedSp1Patch = filesystem.GetFile( cachedSp1PatchFileName );
var currentAttributes = updatedSp1Patch.Attributes;
// If the file isn't read-only mark it as such.
if( ( currentAttributes & 1 ) == 0 )
{
updatedSp1Patch.Attributes = (currentAttributes | 1 );
}
}
}
}
The SP1 package when run with the "/X" switch will popup a dialog that allows you to extract out the files to a location on your local disk. You are going to need to run this and save off the SP1 files to a path on your machine. Once you do that, you run the script above and pass to it the path of where the files were extracted. Then you should be able to apply SP2. The steps will look like this:
- SQLServer2005SP1-KB913090-x86-ENU.exe /X
- cscript RepairSP1Source.js "<path to SP1 files>"
- Run SP2 again
