Category: SQL Server

2012: A Year of Microsoft Milestones

2012: A Year of Microsoft Milestones

MCSE: Private Cloud

MCSE: Private Cloud

Yesterday I passed the Microsoft exam 70-246: Monitoring and Operating Private Cloud with System Center 2012. And I can now finally call myself a Microsoft Certified Solutions Expert for Private Cloud or MCSE: Private Cloud.

The new (reborn) Microsoft Certifications MCSA (Microsoft Certified Solutions Associate) and MCSE (Microsoft Certified Solutions Expert) were first shown at the Microsoft Management Summit this year.

At the moment there are the following certifications public

Private Cloud (System Center)

For the MCSE: Private Cloud you have to do the following

MCSE: Private Cloud

Windows Server

SQL Server

Now I am not the first one here in Switzerland who passed these exams, for example Marcel Zehner and Michel Lüscher did the exams at exams at MMS 2012 in Las Vegas and they got the results last week. Congrats guys 😉

Slipstream SQL Server 2008 SP2 for SCCM 2012

The Release Candidate version of System Center Configuration Manager 2012 requires MS SQL Server 2008 SP2 with Cumulative update package 6. Now this can be a little annoying and will hopefully change to SQL Server 2008 R2 in the RTM version.

Now if you want to install MS SQL Server 2008 on a Windows Server 2008 R2 you need at least a install media with SP1. Now this post shows you how you can integrate Service Pack 2 into the install media of SQL Server 2008.

  1. Copy the SQL Server 2008 install media to C:\SQLServer2008withSP2
  2. Download and copy the SQL Server 2008 Service Pack 2 files to C:\temp
  3. Now you can run the following commands:[powershell]SQLServer2008SP2-KB2285068-IA64-ENU.exe /x:c:\SQLServer2008withSP2\PCU
    SQLServer2008SP2-KB2285068-x64-ENU.exe /x:c:\SQLServer2008withSP2\PCU
    SQLServer2008SP2-KB2285068-x86-ENU.exe /x:c:\SQLServer2008withSP2\PCUrobocopy C:\SQLServer2008withSP2\PCU c:\SQLServer2008withSP2 Setup.exe
    robocopy C:\SQLServer2008withSP2\PCU c:\SQLServer2008withSP2 Setup.rll
    robocopy C:\SQLServer2008withSP2\pcu\x86 C:\SQLServer2008withSP2\x86 /XF Microsoft.SQL.Chainer.PackageData.dll
    robocopy C:\SQLServer2008withSP2\pcu\x64 C:\SQLServer2008withSP2\x64 /XF Microsoft.SQL.Chainer.PackageData.dll
    robocopy C:\SQLServer2008withSP2\pcu\ia64 C:\SQLServer2008withSP2\ia64 /XF Microsoft.SQL.Chainer.PackageData.dllecho PCUSOURCE=”C:\SQLServer2008withSP2\PCU” >> C:\SQLServer2008withSP2\x86\DefaultSetup.ini
    echo PCUSOURCE=”C:\SQLServer2008withSP2\PCU” >> C:\SQLServer2008withSP2\x64\DefaultSetup.ini
    echo PCUSOURCE=”C:\SQLServer2008withSP2\PCU” >> C:\SQLServer2008withSP2\ia64\DefaultSetup.ini[/powershell]
  4. After you have done this you can install the MS SQL Server
  5. After you have installed it, you still need to download and install the Cumulative update package 6 for SQL Server 2008 Service Pack 2

More about SQL Slipstreaming on Peter Saddow’s MSDN blog post.

VMware VirtualCenter Server service does not start automatically after reboot

We had a problem with our VMware VirtualCenter Server service which did not start automatically after a server reboot. This could be a problem when the VMware VirtualCenter Server service starts before the MSSQL Server.

Now the solution to solve this problem is to add a dependency to the VMware VirtualCenter Server service.

The VirtualCenter Server service is dependent on the following services:

  • SQL Services
  • ADAM Services (when using linked mode in vCenter Server 4.x)

How to create a service dependency:

  1. Open the services.msc
  2. Check out the name of the service you want to add as dependency
  3. open the Registry Editor (regedit)
  4. Browse to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vpxd
  5. Double-click the DependOnService key and add the Service name using the name of the Service in our case MSSQLSERVER
  6. In the Services window, open the service properties for the service VMware VirtualCenter Server.
  7. In the Dependencies tab, verify the VMware VirtualCenter service is listed as depending on the service.

In Windows Server 2008 or later you could also set VMware VirtualCenter Server service to startup type Automatic (Delay):

  1. Click Start > Run, type services.msc, and click OK.
  2. Right-click on the VMware VirtualCenter Server service and click Properties.
  3. Change the startup type from Automatic to Automatic (Delay).

More Information on this: VMware KB

Microsoft WebMatrix and Microsoft WebPlatform Installer

Microsoft WebMatrixFor a project at KTSI we needed a platform to quick deploy PHP and MySQL applications. There are a lot of solutions out there in the web, for example XAMPP. After testing some options I had a closer look at the Microsoft WebPlatform Installer and Microsoft WebMatrix. Those two tools do exactly what I need. With the WebPlatform Installer you can easily install a local instance of IIS Express with ASP.NET, PHP, MSSQL and MySQL support with in 5-10 minutes.

But the coolest tool in my opinion is WebMatrix. Webmatrix lets developers create, manage and deploy Web Applications very very easy. And if you need to to more Webmatrix lets you also work with Visual Studio on the same project.

How to integrate (slipstream) SQL Server 2008 and SP1

To install SQL Server 2008 on a Windows Server 2008 R2 you need a slipstream version of SQL Server 2008 with integrated Servicepack 1. At the moment you can’t download SQL Server 2008 with integrated SP1, so you have to create your own slipstream version.

1. Copy your original SQL Server 2008 source media to c:\SQLServer2008_FullSP1

2. Download Service Pack 1 from The three architectures of Service Pack 1 should be included, the package names are as follows:

  • SQLServer2008SP1-KB968369-IA64-ENU.exe
  • SQLServer2008SP1-KB968369-x64-ENU.exe
  • SQLServer2008SP1-KB968369-x86-ENU.exe

3. Extract the packages as follows:

  • SQLServer2008SP1-KB968369-IA64-ENU.exe /x:c:\SQLServer2008_FullSP1\PCU
  • SQLServer2008SP1-KB968369-x64-ENU.exe /x:c:\SQLServer2008_FullSP1\PCU
  • SQLServer2008SP1-KB968369-x86-ENU.exe /x:c:\SQLServer2008_FullSP1\PCU

4. Copy Setup.exe and Setup.rll from the PCU extracted location to original source media location

  • robocopy C:\SQLServer2008_FullSP1\PCU c:\SQLServer2008_FullSP1 Setup.exe
  • robocopy C:\SQLServer2008_FullSP1\PCU c:\SQLServer2008_FullSP1 Setup.rll

5. Copy all files not the folders, except the Microsoft.SQL.Chainer.PackageData.dll, in c:\SQLServer2008_FullSP1\PCU\<architecture> to C:\SQLServer2008_FullSP1 \<architecture> to update the original files.

  • robocopy C:\SQLServer2008_FullSP1\pcu\x86 C:\SQLServer2008_FullSP1\x86 /XF Microsoft.SQL.Chainer.PackageData.dll
  • robocopy C:\SQLServer2008_FullSP1\pcu\x64 C:\SQLServer2008_FullSP1\x64 /XF Microsoft.SQL.Chainer.PackageData.dll
  • robocopy C:\SQLServer2008_FullSP1\pcu\ia64 C:\SQLServer2008_FullSP1\ia64 /XF Microsoft.SQL.Chainer.PackageData.dll

6. Determine if you have a defaultsetup.ini at the following locations:

  • C:\SQLServer2008_FullSP1\x86
  • C:\SQLServer2008_FullSP1\x64
  • C:\SQLServer2008_FullSP1\ia64

If you have a defaultsetup.ini, add PCUSOURCE=”{Full path}\PCU”.

NOTE: The {Full path} needs to be the absolute path to the PCU folder. If you will just be running from local folder it would be C:\SQLServer2008_FullSP1. If you will eventually share this folder out, {Full path} would be \\MyServer\SQLServer2008_FullSP1.

See question #11 here if you would like to use a relative path.
;SQLSERVER2008 Configuration File


PCUSOURCE=”{Full path}\PCU”
If you do NOT have a defaultsetup.ini, create one with the following content:
;SQLSERVER2008 Configuration File


PCUSOURCE=”{full path}\PCU”
and copy to the following locations:



This file will tell the setup program where to locate the SP1 source media that you extracted in step 3.
7. Now run setup.exe as you normally would.

More Information can be found on this msdn blog. Thanks to Peter Saddow.

Shrinking the Transaction Log in SQL Server 2005

  • Use the MS SQL Server Management Studio

EXEC sp_dboption 'XXX', 'trunc. log on chkpt.', 'TRUE'
EXEC sp_dboption 'XXX', 'trunc. log on chkpt.', 'FALSE'

  • (replace XXX with the database name)