none
SQL 2012 Express, Prepare and Complete Image RRS feed

  • Question

  • Hi All,

    I have a problem that is very similar to the one reported here: https://social.technet.microsoft.com/Forums/sqlserver/en-US/771492e5-c271-491c-9bd6-8ec01e65e96c/sql2012-express-completeimage-for-sysprep-fail-for-quotdoes-not-meet-upgrade-matrix?forum=sqlsetupandupgrade

    I have to rollout 1500 laptops each with SQL 2012 Express to run a Kiosk based app. Previously we used SQL 2008 R2 and did an unattended installation on each device after the OS was laid down. This time around I am trying to make use of the Prepare and Complete processes so I can get most of the SQL installation as part of our Windows base image. This is all being delivered via SCCM.

    I have reviewed and considered all of these articles:

        I am using SQL Advanced x64 SP2 running on Windows 7 x64 Enterprise Edition.

        Steps:

        A) I used a virtual machine to create the Prepare image configuration file so that I can automate this step when creating the "real" Windows 7 reference machine. 

        1. I started with "setup.exe /uimode=normal /action=prepareimage"
        2. I completed the preparation wizard and grabbed the configurationfile.ini following that step.
        3. I let the prepareimage process complete so that I could then use the same machine to create the CompleteImage configuration file.

        B) Once I had the two configuration I prepared the real windows 7 reference machine.

        1. I installed SQL using "setup.exe /uimode=normal /action=prepareimage /configurationfile=Prepare.ini /IACCEPTSQLSERVERLICENSETERMS"
        2. This step was successful. SQL laid down its binary files and created the start menu programs. I made sure by reviewing the summary.txt file to make sure the installation had no issues. 

        C) Once prepared I captured the Windows 7 reference machine and added that image to an SCCM task sequence. 

        1. I built a device using that task sequence and that also worked well.
        2. I left the Complete Image step out of the task sequence so that I could test this manually
        3. Once built I started and elevated command prompt and navigated to "C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\SQLServer2012\"
        4. I ran setup.exe /action=completeimage /configurationfile=Complete.ini /IACCEPTSQLSERVERLICENSETERMS
        5. This resulted in and error : "RANU is supported only for SQL Server Express.". After researching this I edited the complete.ini configuration file and set "EnableRANU=True" to False. 
        6. Setting this to false resulted in a new error which was "The selected SQL Server instance does not meet upgrade matrix requirements."

        Everything is pointing to the fact that SQL is somehow in Evaluation mode. 

        The article "https://msdn.microsoft.com/en-us/library/ee210754.aspx" states the following:

        • Non-Express editions of SQL Server:

          • The Prepare Image step uses SQL Server Evaluation edition to install the product binaries. When the instance is completed, the edition of SQL Server depends on the product ID provided during the complete image step.

          • If you provide an Evaluation edition product ID, the evaluation period is set to expire 180 days after the prepared instance is completed.

        • Express editions of SQL Server:

          • To prepare an instance of SQL Server Express editions, use the Express installation media.

      • You cannot specify Product IDs for a prepared instance of SQL Server Express editions.

    It clearly states here that non-SQL Express editions goes into evaluation mode. It seems, however that Express does the same. However it also states that that a product ID cannot be supplied for a SQL Express prepared image.

    If I run the /action=CompleteImage without the configuration INI file the wizard works as expected. When I get up to to the Product ID dialogue I can pick from Evaluation or Express. This seems to confirm that Express is going into Evaluation mode. The "RANU is supported only for SQL Server Express." error message also indicates that when running a CompleteImage using an INI file somehow it defaults to Evaluation mode.

    At this point I am a bit stuck. Any suggestions would be great.


    NSutton

    Wednesday, May 13, 2015 10:10 AM

Answers

  • Hi Lydia,

    Yes the issue is resolved.

    I placed a copy of the extracted SQL installation media within the WIM for the captured operating system. I than used a SCCM Task Sequence step to complete the SQL Express build process. The command used the setup.exe within the SQL installation media.

    Unfortunately I cannot not find any documentation from Microsoft on this. I assumed that by using the Prepare and Complete feature of SQL installs I could avoid having to use the SQL installation media as all of the file assets are already in the Windows image. This now means I am adding another 2GB of data to my WIM which will need to be cleaned up at the end of the task sequence.

    It is still faster than performing an unattended installation of SQL during the task sequence. It is just not well documented. Unfortunately all of the blogs I have found are done by SQL MVPs who do not cross over into server or desktop deployment world.

    Cheers,


    NSutton

    • Marked as answer by Nathan Sutton Thursday, May 14, 2015 6:33 AM
    Thursday, May 14, 2015 6:32 AM

All replies

  • Hi All,

    I have just discovered this thread ... https://social.technet.microsoft.com/Forums/sqlserver/en-US/c3916d83-1887-436e-9c9a-533a6b77db3f/problems-with-completing-prepared-instance-of-sql-server-2012?forum=sqlsetupandupgrade

    I makes mention that the CompleteImage step should be run from the source media setup.exe and not from the setup.exe that is under "C:\Program Files\Microsoft SQL Server\110\Setup Bootstrap\SQLServer2012\".

    Looking further into the detailed installation log I have also found this ....

    (01) 2015-05-13 16:26:05 Slp: Package ID SqlSupport_Cpu64: Installed - Version: 11.2.5522.0
    (01) 2015-05-13 16:26:05 Slp: Package ID WatsonX86_Cpu32: Installed - Version: 12.0.6012.5000
    (01) 2015-05-13 16:26:05 Slp: Package ID sqlncli_Cpu64: Installed - Version: 11.2.5058.0
    (01) 2015-05-13 16:26:05 Slp: Package ID SqlLocalDB_Cpu64: NotInstalled
    (01) 2015-05-13 16:26:05 Slp: Package ID SqlLocalDB_CTP3_Cpu64: The package is from previous product. The version does not matched because the source media is not provided.

    I believe this may be why the CompleteImage is going into Evaluation Mode. I will try running the CompleteImage from the original source tomorrow to see if it works.


    NSutton

    Wednesday, May 13, 2015 10:41 AM
  • Hi NSutton,

    If the issue is resolved, you can mark your reply as answer, that way, other community members could benefit from your sharing.


    Thanks,
    Lydia Zhang

    If you have any feedback on our support, please click here.


    Lydia Zhang
    TechNet Community Support



    Thursday, May 14, 2015 3:23 AM
    Moderator
  • Hi Lydia,

    Yes the issue is resolved.

    I placed a copy of the extracted SQL installation media within the WIM for the captured operating system. I than used a SCCM Task Sequence step to complete the SQL Express build process. The command used the setup.exe within the SQL installation media.

    Unfortunately I cannot not find any documentation from Microsoft on this. I assumed that by using the Prepare and Complete feature of SQL installs I could avoid having to use the SQL installation media as all of the file assets are already in the Windows image. This now means I am adding another 2GB of data to my WIM which will need to be cleaned up at the end of the task sequence.

    It is still faster than performing an unattended installation of SQL during the task sequence. It is just not well documented. Unfortunately all of the blogs I have found are done by SQL MVPs who do not cross over into server or desktop deployment world.

    Cheers,


    NSutton

    • Marked as answer by Nathan Sutton Thursday, May 14, 2015 6:33 AM
    Thursday, May 14, 2015 6:32 AM
  • This fix also works with SQL Server Express 2014

    regards Rob Goodridge

    Friday, January 22, 2016 5:34 AM